PHP扩展C++
这个文档简单介绍了怎么使用C++为PHP编写一个扩展模块。我已经被问及这个问题无数次了,所以我决定为后来者写一个简单的HOWTO。这篇文章只会说明一些要点和关键之处,如果你希望学习C++或PHP,请查阅其它的文档。
顺便,在本文中我们也会看一下在PHP5中怎么把C++类影射到PHP中。文章中的例子可以在PHP4和PHP5的环境下使用,但是有一个小小的问题:扩展的PHP类只能在PHP5中使用。:P
基本上,我们会介绍怎么样为C++类创建一个可以在PHP4和PHP5下使用的结构化接口,及可以在PHP5下使用的对象化接口。
这个HOWTO
是参考了一些实现得很好的PHP5扩展模块后写成的。如:Sqlite和SimpleXML扩展就是教导大家怎样在PHP5中扩展类的很好例子。但我的那
些作品除外,只有cryptopp-php使用了很多特性。(还没有发布的PHP5将可以支持cryptopp-php 0.0.14。)
注意:PHP5目前仍在预发布状态,它可能还会做一些改动,尽管文档中的代码我已经在最新CVS版本的PHP 5环境下测试过,但在你读到这篇文章的时候可能还要做一些改动才能正常工作。如果文档中的代码在最新PHP 5中不能使用,请知会我,我会做相应的修正。
第1节. 开始之前
开始前,我要说明:这篇文章所描述的主要是在UNIX的PHP环境上的。当然,我会提及一些在Windows上的开发。但是我大部分的编码都是在UNIX系统上的,所以我会更多的介绍一下我所了解的那一部分。
另外一点我要说明的是:文中所介绍的方法在PHP 4.3.x和PHP 5下都是可行的。尽管我们在开始的时候会基于PHP5来介绍,但是你会发现这些方法在PHP 4.3.x中也是可行的。
我在本文中有一些约定...
$PHP_HOME
是指你的PHP源代码的位置,如:你解开的PHP源代码包所放的位置。在我的系统中指的是:
/home/jay/setup/php/php-x.x.x
.
我们用来做例子的模块叫做
php5cpp
.
第2节.安装
在你用C++编写PHP扩展前,你先要搭建一个基本的扩展模块的架构。在UNIX下,你可以运行一个在
$PHP_HOME/ext
下叫做
ext_skel
的shell脚本。先切换到
$PHP_HOME/ext
目录和执行那个shell脚本,并用
--extname
参数为你的扩展模块命名。
jay@monty ~ $ cd setup/php/php-5.x.x/ext
jay@month ext $ ./ext_skel --extname php5cpp
在Windows系统,目前PHP CVS代码中,可以使用位于
$PHP_HOME/ext
的
ext_skel_win32.php
的PHP脚本是。也�
相关文档:
可以通过序列话一个数组,然后放到cookie中
从cookie中得到值,然后在反序列化,转换为数组。
$cur_goods_array = unserialize(stripslashes($_COOKIE['shop_cart_info']));
setcookie("shop_cart_info",serialize($cur_goods_array)); ......
中国第一档绿色PHP资源分享门户,专注于创新和原创类源码php资源,原创视频php资源,原创典型模块php资源,原创php开源资源,原创php教程资源,原创网站模板资源 。网站地址 http://www.phpzy.com/
绿色php资源 ......
使用PHP的cURL库可以简单和有效地去抓网页。你只需要运行一个脚本,然后分析一下你所抓取的网页,然后就可以以程序的方式得到你想要的数据
了。无论是你想从从一个链接上取部分数据,或是取一个XML文件并把其导入数据库,那怕就是简单的获取网页内容,cURL 是一个功能强大的PHP库。
PHP中的CURL函数库(Client URL Librar ......
今天去XX公司面试了,感觉很不理想。因为这一段时间都在加深Zend Framework,都没练习常用函数和方法了。
笔试回答的不太好,特别是JS部分,也是许久都没复习的原因。
上机题目是要写一个仿google分页的类,当要取类似9/2的最大整数,却怎么也想不起函数ceil的名字,晕了半天。
最后测试程序没错误,但是就是不能� ......
一、 开发成员
a)项目主管
b)页面美工
c)页面开发
d)服务端程序开发
e)系统与数据管理
f)测试与版本控制
二、 网站组开发简明流程
三、 开发工具与环境
a) 服务器配置
i. WEB服务器: FreeBSD6.1+Apache2.0+PHP5.0,SVN版本控制服务(仅测试机)。
ii. 数据库服务器: WIN2003 server+SQL server 2000 ......