继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

PHP扩展开发系列教程-1

慕工程3455409
关注TA
已关注
手记 318
粉丝 78
获赞 293

PHP的核心由两部分组成。最底层是zend引擎(ZE)。另一部分是PHP内核,她绑定了SAPI层(Server Application Programming Interface).

 

###扩展的内存管理

_____________________________________________________________

 

1 依赖ZE内部管理

 

2 自己写内存管理

 

##创建基础hello 扩展

_____________________________________________________________

 

###config.m4

______________________________________________________________

这个是 Phpize 用来编译的扩展文件的配置文件

 

###php_hello.h 配置文件

____________________________________________________________

进行配置文件

 

###hello.c

______________________________________________________________

原文件

关键的代码

 

### RETURN_STRING(str,0/1);

___________________________________________________________

从 0 或者1 代表是否需要 ZE引擎对内存进行处理。 或者 是否拷贝

同理有,RETURN_LONG(),RETURN_DOUBLE(),等等

 

 

##新增扩展内部函数

_________________________________________________________

###如何在扩展中新增一个函数

__________________________________________________________

1 在 扩展.c中function_entry 结构中添加对应的 PHP_FE();

     static function_entry hello_functions[] {

          PHP_FE(hello_long,NULL);

}

 

2 在扩展文件中添加相应函数的实现

 

PHP_FUNCTION(hello_long){

     RETURN_DOUBLE(3.1415926);

}

 

3 在扩展的头文件,如 php_hello.h函数中添加函数原型声明

 

PHP_FUNCTION(hello_long);

 

添加新的函数后,可以重新在编译一次, 推荐 make clean all

 

###非标量的返回类型

________________________________________________________________

资源[msyql_connect],数组,对象(new class)

 

##通过php.ini初始化你扩展的配置

_______________________________________________________________

 

下一节继续。

 

 

 

 php初学者-千锋php课程笔记


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP