如何使用PHP Embed SAPI实现Opcodes查看器

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了如何使用PHP Embed SAPI实现Opcodes查看器脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

PHP提供了一个Embed SAPI,也就是说,PHP容许你在C/C++语言中调用PHP/ZE提供的函数。本文就通过基于Embed SAPI实现一个PHP的opcodes查看器。

首先,下载PHP码以供编译, 我现在使用的是PHP5.3 alpha2

进入源码目录:

./configure --enable-embed --wITh-config-file-scan-dir=/etc/PHP.d --with-MysqL --with-config-file-path=/etc/ ./make ./make install

最后,记得要将生成的libPHP5.so复制到运行时库的目录,我直接拷贝到了/lib/,否则会在运行你自己的embed程序的时候报错:

./embed: error while loading shared libraries: libPHP5.so: cannot oPEn shared object file: No such file or directory

如果你对PHP的SAPI还不熟悉的话,我建议你看看我的这篇文章:深入理解Zend SAPIs(Zend SAPI Internals) 这个时候,你就可以在你的C代码中,嵌入PHP脚本解析器了, 我的例子:

<PRe class="brush:PHp;"> #include "sapi/embed/PHP_embed.h" int main(int argc,char * argv[]){ PHP_EMBED_START_BLOCK(argc,argv); char * script = " print 'Hello World!';"; zend_eval_string(script,NULL,"Simple Hello World App" TSRMLS_CC); PHP_EMBED_END_BLOCK(); return 0; }

脚本宝典总结

以上是脚本宝典为你收集整理的如何使用PHP Embed SAPI实现Opcodes查看器全部内容,希望文章能够帮你解决如何使用PHP Embed SAPI实现Opcodes查看器所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:php_sapi