PHP動態擴展模塊
本節操作使用PHP7
-
查看php模塊:
[root@localhost ~]# /usr/local/php/bin/php -m
-
安裝 Redis模塊
redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)和zset(有序集合)。
準備安裝:
[root@localhost ~]# cd /usr/local/src下載Redis安裝包:
[root@localhost src]# wget https://codeload.github.com/phpredis/phpredis/zip/develop重命名:
[root@localhost src]# mv develop phpredis-develop.zip解壓:
[root@localhost src]# unzip phpredis-develop.zip[root@localhost src]# cd phpredis-develop/
[root@localhost phpredis-develop]# /usr/local/php7/bin/phpize
#執行該命令的目的是生成configure文件,否則無法進行編譯安裝報錯:
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.解決辦法:
[root@localhost phpredis-develop]# yum install -y autoconf[root@adailinux phpredis-develop]# /usr/local/php7/bin/phpize
Configuring for:
PHP Api Version: 20160303
Zend Module Api No: 20160303
Zend Extension Api No: 320160303 -
環境配置
[root@localhost phpredis-develop]# ./configure --with-php-config=/usr/local/php7/bin/php-config
-
編譯、安裝
[root@localhost phpredis-develop]# make
[root@localhost phpredis-develop]# make install
Installing shared extensions: /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/[root@localhost phpredis-develop]# ls /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/
opcache.so redis.so -
爲php加載Redis模塊
先查看擴展模塊所在目錄:
[root@localhost phpredis-develop]# /usr/local/php7/bin/php -i|grep extension_dir
extension_dir => /usr/local/php7/lib/php/extensions/no-debug-zts-20160303 => /usr/local/php7/lib/php/extensions/no-debug-zts-20160303
sqlite3.extension_dir => no value => no value說明:該目錄可以在PHP配置文件php.ini中進行設置(保持默認)。
加載Redis模塊
編輯php的配置文件:[root@localhost phpredis-develop]# vim /usr/local/php7/etc/php.ini
; If you wish to have an extension loaded automatically, use the following
; syntax:
; ... or under UNIX:
;
; extension=msql.so
extension=redis.so[root@localhost phpredis-develop]# /usr/local/php7/bin/php -m |grep redis
redis說明:在配置文件中加入“extension=redis.so”即可!該文件中“;”表示註釋符號,同“#”。
- 關於擴展板塊
在PHP的源碼包中沒有第三方模塊的包,但是在PHP源碼包的/ext/目錄下有好多擴展模塊,如果所需要的擴展模塊在該目錄下,可以直接進行安裝:
先切換到指定模塊目錄下,然後進行如下操作:
生成configure文件:
[root@adailinux phpredis-develop]# /usr/local/php7/bin/phpize
環境配置:
[root@adailinux phpredis-develop]# ./configure --with-php-config=/usr/local/php7/bin/php-config
編譯:
[root@adailinux phpredis-develop]# make
安裝:
[root@adailinux phpredis-develop]# make install
安裝完成後在編輯php.ini進行配置!