现在的位置: 主页 > 公司荣誉 > 文章列表

PHP扩展生成器

作者:合肥瑶海区海美电器服务部 来源:www.an128l.com 未知发布时间:2017-09-04 14:28:44
PHP扩展生成器 第一种方法:使用PHP源码包自带的ext_skel工具。

~/public_html/php-5.3.13/ext> ./ext_skel --extname=sample11

Creating directory sample11

Creating basic files: config.m4 config.w32 .svnignore sample11.c php_sample11.h CREDITS EXPERIMENTAL tests/001.phpt sample11.php [done].

To use your new extension, you will have to execute the following steps:

1. $ cd ..

2. $ vi ext/sample11/config.m4

3. $ ./buildconf

4. $ ./configure --[with|enable]-sample11

5. $ make

6. $ ./php -f ext/sample11/sample11.php

7. $ vi ext/sample11/sample11.c

8. $ make

Repeat steps 3-6 until you are satisfied with ext/sample11/config.m4 and

step 6 confirms that your module is compiled into PHP. Then, start writing

code and repeat the last two steps as often as necessary.

第二种方法:使用CodeGen_PECL。

/usr/local/services/php/bin> sudo ./pear install CodeGen_PECL

downloading CodeGen_PECL-1.1.3.tgz ...

Starting to download CodeGen_PECL-1.1.3.tgz (102,640 bytes)

........................done: 102,640 bytes

install ok: channel://pear.php.net/CodeGen_PECL-1.1.3

/usr/local/services/php/bin> sudo ln -s /usr/local/services/php/bin/pecl-gen /usr/local/bin/

~/public_html/php-5.3.13/ext> pecl-gen --extname=sample12

Strict Standards: Declaration of CodeGen_PECL_Element_Constant::docFooter() should be compatible with that of CodeGen_Element::docFooter() in /usr/local/services/php/lib/php/CodeGen/PECL/Element/Constant.php on line 341

Strict Standards: Declaration of CodeGen_PECL_Element_Resource::hCode() should be compatible with that of CodeGen_Element::hCode() in /usr/local/services/php/lib/php/CodeGen/PECL/Element/Resource.php on line 354

Strict Standards: Declaration of CodeGen_PECL_Element_Ini::docFooter() should be compatible with that of CodeGen_Element::docFooter() in /usr/local/services/php/lib/php/CodeGen/PECL/Element/Ini.php on line 443

Strict Standards: Declaration of CodeGen_PECL_Element_Logo::hCode() should be compatible with that of CodeGen_Element::hCode() in /usr/local/services/php/lib/php/CodeGen/PECL/Element/Logo.php on line 259

Strict Standards: Declaration of CodeGen_PECL_Element_Method::setCode() should be compatible with that of CodeGen_PECL_Element_Function::setCode() in www.2cto.com/usr/local/services/php/lib/php/CodeGen/PECL/Element/Method.php on line 471

Strict Standards: Declaration of CodeGen_PECL_Element_Stream::hCode() should be compatible with that of CodeGen_Element::hCode() in /usr/local/services/php/lib/php/CodeGen/PECL/Element/Stream.php on line 239

Your extension has been created in directory ./sample12.

See ./sample12/README and/or ./sample12/INSTALL for further instructions.

注:报错“Strict Standards: Declaration of […] should be compatible with that of […] in […]”是因为PHP5.3.0+要求子类声明必须在父类声明,,请直接修改php.ini。

error_reporting = E_ALL & ~E_STRICT

以上只是给出了生成PHP扩展的最简单的命令,ext_skel和pecl-gen还支持多种参数生成更加丰富的扩展,请自行参考相关帮助文档。

~/public_html/php-5.3.13/ext> ./ext_skel --help

~/public_html/php-5.3.13/ext> pecl-gen --help

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:孝感SEO http://xiaogan.raoyu.net

上一篇:常用正则表达式 下一篇:最后一页