青鳥翔天:Linux下C語言對PHP擴(kuò)展
現(xiàn)在常用的是php語言,哪如何實現(xiàn)常用計算機(jī)語言C語言和PHP的轉(zhuǎn)換呢?那我們河南北大青鳥電腦培訓(xùn)學(xué)校今天就給大家分享下,如何在Linux環(huán)境下實現(xiàn)C語言對PHP的擴(kuò)展。方法如下:
一,搭建php環(huán)境
下載php 5.2.6 源碼 并解壓,編譯安裝,搭建php環(huán)境。
二,創(chuàng)建擴(kuò)展項目
進(jìn)入源碼目錄
cd php5.2.6/ext/
./ext_skel --extname=my_ext
創(chuàng)建名字為my_ext的項目,最終會生成my_ext.so
三,更改配置和程序
$ vi ext/my_ext/config.m4
根據(jù)你自己的選擇將
dnl PHP_ARG_WITH(my_ext, for my_ext support,
dnl Make sure that the comment is aligned:
dnl [ --with-my_ext Include my_ext support])
修改成
PHP_ARG_WITH(my_ext, for my_ext support,
Make sure that the comment is aligned:
[ --with-my_ext Include my_ext support])
或者將
dnl PHP_ARG_ENABLE(my_ext, whether to enable my_ext support,
dnl Make sure that the comment is aligned:
dnl [ --enable-my_ext Enable my_ext support])
修改成
PHP_ARG_ENABLE(my_ext, whether to enable my_ext support,
Make sure that the comment is aligned:
[ --enable-my_ext Enable my_ext support])
$ vi ext/my_ext/php_my_ext.h
將
PHP_FUNCTION(confirm_my_ext_compiled); /* For testing, remove later. */
更改為
PHP_FUNCTION(say_hello);
$ vi ext/my_ext/my_ext.c
將
zend_function_entry php5cpp_functions[] = {
PHP_FE(confirm_my_ext_compiled, NULL) /* For testing, remove later. */
{NULL, NULL, NULL} /* Must be the last line in php5cpp_functions[] */
};
更改為
zend_function_entry php5cpp_functions[] = {
PHP_FE(say_hello, NULL)
{NULL, NULL, NULL} /* Must be the last line in php5cpp_functions[] */
};
在最后添加:
PHP_FUNCTION(say_hello)
{
zend_printf("hello world\n");
}
四,編譯
$ cd my_ext
$ /usr/local/php/bin/phpize
ps: 如果出現(xiàn):Cannot find autoconf.……的錯誤信息,則需要安裝 autoconf (安裝過程略)
$ ./configure --with-php-config=/usr/local/php/bin/php-config
$ make
這時會編譯出 my_ext/modules/my_ext.so
五,配置php.ini
將my_ext.so放入/usr/local/php/ext/目錄
$ vi php.ini
修改添加如下:
extension_dir = '/usr/local/php/ext/'
extension=my_ext.so
六,測試
$ vi test.php
<?php
say_hello();
?>
$ /usr/local/php/bin/php test.php
hello world.
至此就完成了。
本文源自:網(wǎng)路技術(shù) 版塊,更多網(wǎng)絡(luò)技術(shù)交流知識請鏈接:http:///jsjl/
本文由站河南北大青鳥校區(qū)整編而成,如需了解更多IT資訊類的文章、新聞、課程和學(xué)習(xí)技巧、就業(yè)案例、招生詳情等問題,可以對在線咨詢老師進(jìn)行一對一問答!
- 上一篇:暑期實踐報告網(wǎng)絡(luò)類
- 下一篇:如何修改X的分辨率?
推薦資訊
- 致鄭州北大青鳥百度貼吧吧友的一... 2015-08-18
- 高中生選擇什么行業(yè)才能有好出路... 2012-10-13
- 學(xué)Android課程到北大青鳥,做最有... 2012-10-13
- O2O大潮下,青鳥O2O模式為什么這... 2015-03-25
- 轉(zhuǎn)行小忠告:轉(zhuǎn)行前請先“充電”... 2013-06-15
熱點資訊
- 電腦溫度多少是正常的情況呢?... 2018-09-07
- 四個策略及簡單的防護(hù)方法... 2018-09-07
- 對硬盤進(jìn)行雙分區(qū)有什么好處... 2018-09-07
- 文件加密的幾個簡單方法... 2018-09-07
- 計算機(jī)小技巧,80G硬盤巧變變成... 2018-09-07