当前位置:   article > 正文

php怎么调用c语言dll,PHP调用C语言扩展

php5调用c的函数

运行环境

ubuntu server 14.04+PHP5.5.9+apache2

操作步骤

1、先下载PHP源码包,因为我系统中的PHP没有ext_skel这个骨架,注意,这个PHP源码包版本最好对应,因为我这前下载过旧版本的,导致没有办法生成骨架。

sudo apt-get install php5-dev

2、解压源码包到你的home目录中,也可以你自己指定的目录

tar -czvf php-5.5.12.tar.gz

3、根据以下的命令进行输入,用过ubuntu的会知道命令什么意思,这里不解析

cd php-5.5.12/ext

./ext_skel --extname=bank //bank是我将要做的银行接口系统扩展,这时会生成一个bank的目录,注意,如果ext_skel用的是旧版本,这里可能会出错

cd bank

vim config.m4

//把第16和第18行的dnl这个注释符号去掉,去掉后是下面的样子

PHP_ARG_ENABLE(bank, whether to enable bank support,

dnl Make sure that the comment is aligned:

[  --enable-bank           Enable bank support])4、运行phpize程序,这个命令不一定每个人的系统中都有,如果没有请安装。这个命令会在当前目录生成一些文件,如果运行完后你能在当前目录下找到php_bank.h和bank.说明运行成功。

sudo apt-get install phpize //当phpize没有时要运行这个命令安装

phpize5、修改php_bank.h文件

vim php_bank.h

//找到PHP_FUNCTION(confirm_hello_compiled)在下面增加自己的函数

PHP_FUNCTION(bank_con);

6、修改bank.c,找到PHP_FE(confirm_hello_compiled, NULL)增加自己的函数

vim bank.c

PHP_FE(confirm_bank_compiled,   NULL)           /* For testing, remove later. */

PHP_FE(bank_con, NULL)

在这个文件的最后面增加调用的函数体

PHP_FUNCTION(bank_con)

{

//这里写自己的函数体。

}7、开始配置

./configure --with-php-config=/usr/bin/php-config //注意php-config这个文件是在安装phpize时会产生的,如果没有这个文件是没有办法配置完成

make

make install如果上面3个命令中有出错的话,请从第3步开始重做吧。

8、修改php.ini让他加载扩展

vim /etc/php5/apache2/php.ini

extension=bank.so9、重启apache,然后在phpinfo中就可以看到bank这个扩展的了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/50953
推荐阅读
相关标签
  

闽ICP备14008679号