日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

自己动手用C扩展PHP(三)

發(fā)布時間:2024/9/20 php 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 自己动手用C扩展PHP(三) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在上兩章里講述了擴展模塊的基本用法,相信讀者已經(jīng)能夠構(gòu)建自己的擴展模塊了,接下來,我們來看看幾個重要的函數(shù):

?

1、PHP_MINIT_FUNCTION(MyModule);

?

當模塊被Zend Engine(ZE)加載后,例如Apache啟動,加載了PHP模塊,ZE會對每一個擴展模塊調(diào)用此函數(shù)(如果有的話),可以在該函數(shù)里進行一些初始化操作。

?

2、PHP_RINIT_FUNCTION(MyModule);

?

對于每一個“使用”該模塊的PHP腳本請求前,都執(zhí)行該函數(shù)(如果有的話),最好的例子:Session擴展模塊,如果在一個PHP腳本里執(zhí)行session.start(),Session模塊的PHP_RINIT_FUNCTION()將被調(diào)用。詳情可以看看session模塊的源代碼。

?

3、PHP_RSHUTDOWN_FUNCTION(MyModule);

?

與PHP_RINIT_FUNCTION()相反,該函數(shù)是在一個PHP腳本執(zhí)行完畢后執(zhí)行。

?

4、PHP_MSHUTDOWN_FUNCTION(MyModule);

?

當ZE收到shutdown信號后,例如apache卸載PHP模塊,ZE對每一個模塊調(diào)用此函數(shù),最后關(guān)閉自己的核心子系統(tǒng)。

?

---------------------------------------------

?

如何使用以上的函數(shù)?

?

首先,在頭文件("mymodule.h")里聲明:

?

PHP_MINIT_FUNCTION(MyModule);
PHP_MSHUTDOWN_FUNCTION(MyModule);
PHP_RINIT_FUNCTION(MyModule);
PHP_RSHUTDOWN_FUNCTION(MyModule);

?

然后在你的“mymodule.c”里實現(xiàn)zend_module_entry結(jié)構(gòu):

?

zend_module_entry MyModule_module_entry = {
????#if ZEND_MODULE_API_NO >= 20010901
????????STANDARD_MODULE_HEADER,
????#endif

?

????"MyModule",
????MyModule_functions,
????PHP_MINIT(MyModule),
????PHP_MSHUTDOWN(MyModule),
????PHP_RINIT(MyModule),
????PHP_RSHUTDOWN(MyModule),
????NULL,

?

????#if ZEND_MODULE_API_NO >= 20010901
????????"0.1",
????#endif

?

????STANDARD_MODULE_PROPERTIES
};

?

// 實現(xiàn) PHP_MINIT_FUNCTION() 等等 ...
PHP_MINIT_FUNCTION(MyModule)
{
????// 你的實現(xiàn)代碼 ...
????return SUCCESS;
}


其實ext目錄下的ext_skel程序建立擴展模塊代碼框架的時候都自動化幫你實現(xiàn)了這些結(jié)構(gòu),依照說明填充需要的代碼即可。


來源:http://www.cnblogs.com/moodlxs/archive/2011/09/21/2345382.html

總結(jié)

以上是生活随笔為你收集整理的自己动手用C扩展PHP(三)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。