php编译后还能加扩展功能吗

angryTom
发布: 2019-10-29 17:35:54
原创
3494人浏览过

php编译后还能加扩展功能吗

php编译后还能加扩展功能吗

能加扩展。

php自身提供了很多扩展,比如curl,gmp, mbstring等。我们在编译安装php时未必安装了所有扩展。那么在安装完php后,如果想单独安装某个php自身的扩展怎么办呢?我们以curl扩展模块的安装为例说明如何单独添加扩展。

步骤:
1.进入php源码的扩展目录。本例中我的源码对应目录如下:

/search/src/php-7.0.14/ext
登录后复制

2.进入模块目录,我们安装的是curl扩展,所以进入curl目录。此时,我们所在的目录是

立即学习PHP免费学习笔记(深入)”;

/search/src/php-7.0.14/ext/curl
登录后复制

3.执行phpize。注意,如果你的机器上有多个php版本,一定要执行你准备安装扩展的php版本对应的phpize。比如,我的机器上同时有php7和php5.3.3。我当前准备为php7安装curl扩展。所以执行php7对应的phpize

/usr/local/php7.0/bin/phpize
登录后复制

  结果类似:

Configuring for:
PHP Api Version: 20151012
Zend Module Api No: 20151012
Zend Extension Api No: 320151012
登录后复制

 4.执行./configure

./configure --with-php-config=/usr/local/php7.0/bin/php-config
登录后复制

说明:如果你的机器上只有一个php版本,大多时候不需要特别使用–with-php-config指明相应的php-config所在位置。

5.执行make,之后会在./modules/目录下生成curl.so文件

6.执行make install

结果类似:

Installing shared extensions: /usr/local/php7.0/lib/php/20151012/
登录后复制

 执行结果告诉你将curl.so安装到了哪个目录。

一般情况,如果你正确的指定了php-config或者你的机器只有一个php版本,so都会被正确安装到相应php的extension_dir。如果执行make install后,extension_dir目录下没有相应的so,可以手动将第5步中生成的so文件cp过去。

要查看具体extension_dir,可以执行如下命令。

php -i| grep extension_dir
登录后复制

结果类似

extension_dir => /usr/local/php7.0/lib/php/20151012/ => /usr/local/php7.0/lib/php/20151012/
登录后复制

7.在php.ini中增加

extension=curl.so
登录后复制

如果不知道php.ini的具体位置,可以通过如下命令查看

php --ini
登录后复制

8.执行如下命令,查看是否安装成功

php -m | grep curl
登录后复制

如果你看到了curl, 恭喜你,安装成功!

注意:如果你是使用fpm,apache等方式执行php。在修改相应的php.ini后,还需要重新启动fpm或apache,新的扩展才会生效

更多PHP相关知识,请访问PHP中文网

以上就是php编译后还能加扩展功能吗的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号