- 博客(7)
- 资源 (8)
- 收藏
- 关注
转载 PHP扩展开发(7):zval结构
<br />转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx<br /> <br />在前面的文章多次提到了zval结构,其实所有用户定义的变量在PHP中都是用zval类型来表示的,当我门 使用zend_parse_parameters函数解析参数时,Zend引擎会根据相应的数据类型进行类型转换,而由于PHP中的数组、对象和资源类 型,在C语言中没有对应的类型,所以无法进行类型转换,它们都使用zval表示,先看一下z
2011-05-23 13:37:00 7481
转载 PHP扩展开发(6):接收参数
转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx函数的参数则是PHP代码层和C代码层之间交换数据的唯一途径,因为PHP的调用语法是动态的,不会做任何错误检查,所以检查参数工作需要交给开发PHP扩展人员完成,看一下我们在快速入门里面的一段代码,使用zend_parse_parameters来解析参数:PHP_FUNCTION(say_goodbye) { char *arg = NULL; int a
2011-05-23 13:34:00 1064
转载 PHP扩展开发(5):参数声明
<br /><br /> 转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx<br /> <br />在开发PHP扩展时,参数信息也需要声明,并通过ZEND_FE宏将函数与参数关联起来,注册到函数表中。大家还记得我们在快速入门篇中的一段代码吧:ZEND_BEGIN_ARG_INFO(arg_say_goodbye, 0) ZEND_ARG_INFO(0, name) ZEND_END_ARG_INFO()
2011-05-23 11:51:00 929
原创 PHP扩展开发(4):函数返回值
<br />转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx<br /> <br />在第一篇快速入门里面,我们提到函数的返回值要是用Zend API里面提供的宏定义来返回,在一定程度上这么说是不正确的,其实PHP扩展里面所有的函数的返回值都是通过一个名为return_value的变量传 递的,这个变量同时也是函数中的一个参数,在PHP_FUNCTION()原型中定义。该参数总是包含有一个事先申请好空间的zval(
2011-05-23 11:48:00 1081
转载 PHP扩展开发(3):初始化文件
<br />转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx<br /> <br />在开发PHP扩展时,有时候我们需要访问php.ini文件,本文通过一个例子介绍如何在PHP扩展中访问INI设置项。首先打开php_fetion_echo.h头文件(快速入门篇中的例子),在里面加上函数声明:PHP_FUNCTION(say_hello);<br />在fetion_echo.c文件中,加入下面代码:PHP_INI_BEG
2011-05-23 11:46:00 723
转载 PHP扩展开发(2):实现类扩展(转载)
转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx在第一篇文章中,我们所开发的扩展是单个函数,本篇文章看一下如何开发一个类扩展。假设我们要用PHP扩展实 现一个类Person,它有一个private的成员变量$_name和两个public的实例方法getName()和setName(),可以用 PHP代码表示如下:_name; } public function setName($nam
2011-05-20 18:01:00 1376
转载 PHP扩展开发(1):快速入门(转载)
转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx一. 摘要PHP Extension是扩展PHP的主要手段,如数据库访问,序列化,或者远程过程调用,使用过PHP的人,其实都使用过PHP Extension,PHP里面很多的函数也是通过扩展实现的,而在PHP源码中包含了几十个扩展,PECL仓库中也提供了上百个扩展,所以只要使用 PHP开发,就不可避免的要开发PHP Extension。本文会用图文并茂的方式一步一步为
2011-05-20 17:49:00 787
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人