php有很多扩展,mysqli扩展,redis扩展,curl扩展等等,需要的时候需要你手动安装。
查看php已经安装的扩展:
# php -m
php在常用 扩展在源码包的ext文件夹下有,需要的时候进去安装就行了;如果没有,就自己去http://pecl.php.net下载,原理是一样的。下面,已安装curl扩展为例.
1.安装之前需要2个工具,一个是phpize(编译出configure文件用的),和php-config(编译扩展的时候要用。查看这2个工具的位置:
# which phpize
# which php-config
我自己本机的路径分别 这样的:
/usr/local/php/bin/phpize
/usr/local/php/bin/php-config
如果没有,只要安装php-devel(包含了phpize和php-config)就行了:
# yum -y install php-devel
2.接下来进入到源码包的ext目录下,里面有很多文件夹,每一个都是一个扩展。进入到curl扩展包里面:
# cd /usr/local/jw/php-7.1.5/ext/curl
3.执行命令(不执行的话,这个文件夹下面是没有configure文件的):
# /usr/local/php/bin/phpize
4.然后开始configure,:
# ./configure --with-php-config=/usr/local/php/bin/php-config
这一步可能会报错:
# configure: error: Please reinstall the libcurl distribution -
easy.h should be in /include/curl/
没关系,我们安装libcurl-devel就好了,yum安装就行:
# yum -y install libcurl-devel
然后再执行前面的操作:
# ./configure --with-php-config=/usr/local/php/bin/php-config
接着编译和安装:
# make
# make install
安装成功后会显示下面的路径:
# Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/
运行下面命令:
# /usr/local/php/bin/php -i |grep 'extension_dir'
结果是:
#
extension_dir => /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303 => /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303
sqlite3.extension_dir => no value => no value
可以发现,模块就是安装在extension_dir目录下。
接着修改php.ini配置:
# vim /usr/local/php/etc/php.ini
找到extension=php_shmop.dll,该行下面添加如下信息:
extension=curl.so。
接着查看是否加载成功:
# php -m | grep curl
如果出来curl说明没问题了,然后重启服务器就好了,可以访问phpinfo()去看curl扩展。
1.去官网 :http://pecl.php.net/ 然后搜索需要安装的扩展包
2.比如搜索swoole,搜索结果如下:
3 如果想安装版本为1.9.23的,就使用下列命令:
pecl install swoole-1.9.23
4 安装完成后,还需要编辑 php.ini 文件,在文件的最后面加入以下内容(注:有时候不用加,自动加上去了)
[swoole]
extension=swoole.so
ps:查看php.ini路径命令: php -i |grep php.ini