动态添加php扩展模块

来源:forcaptain 发布时间:2018-12-08 15:16:31 阅读量:733

有时php编译安装好之后,发现摸个编译参数漏掉了,需要的模块不支持但又不想重新编译php,这时我们可以动态的添加php模块。

如我之前有一个编译时漏掉了--enable-mbstring 现在给添加上。

添加扩展模块只要在php的安装包里找到相应的模块源码重新编译后,添加到php扩展就可以。

[root@XXX php-5.3.18]# ls ext/

bcmath              fileinfo   mbstring      pdo_mysql   simplexml  tokenizer

bz2                 filter     mcrypt        pdo_oci     skeleton   wddx

                                      ...             .....

[root@XXX php-5.3.18]# cd ext/mbstring/

[root@XXX mbstring]# pwd

/root/soft/php-5.3.18/ext/mbstring

运行phpize:

[root@XXX mbstring]# /usr/local/webserver/php/bin/phpize 

提示:

Cannot find autoconf. Please check your autoconf installation and the

$PHP_AUTOCONF environment variable. Then, rerun this script.

安装autoconf:

[root@XXX mbstring]# yum install autoconf

[root@XXX mbstring]# /usr/local/webserver/php/bin/phpize 

[root@XXX mbstring]# ./configure   --with-php-config=/usr/local/webserver/php/bin/php-config 

[root@XXX mbstring]# make

[root@XXX mbstring]# make install

Installing shared extensions:     /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20090626/

Installing header files:          /usr/local/webserver/php/include/php/

[root@XXX etc]# ls /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20090626

mbstring.so

模块编译好了,现在添加进php

[root@XXX etc]# vi php.ini 

在最后面增加两行

extension_dir=/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20090626/

extension=mbstring.so

重启php,测试模块加上了。

遇到的问题:

在编译mbstring时要加上  --with-php-config=/usr/local/webserver/php/bin/php-config 不然会出现下面错误

configure: error: Cannot find php-config. Please use --with-php-config=PATH

[root@XXX mbstring]# ./configure   --with-php-config=/usr/local/webserver/php/bin/php-config 

正常。

-


标签: PHP
分享:
评论:
你还没有登录,请先