php自身提供了不少擴展,好比curl,gmp, mbstring等。咱們在編譯安裝php時未必安裝了全部擴展。那麼在安裝完php後,若是想單獨安裝某個php自身的擴展怎麼辦呢?php
咱們以curl擴展模塊的安裝爲例說明如何單獨添加擴展。apache
步驟:
1.進入php源碼的擴展目錄。本例中個人源碼對應目錄以下:php7
/search/src/php-7.0.14/ext
2.進入模塊目錄,咱們安裝的是curl擴展,因此進入curl目錄。此時,咱們所在的目錄是curl
/search/src/php-7.0.14/ext/curl
3.執行phpize。注意,若是你的機器上有多個php版本,必定要執行你準備安裝擴展的php版本對應的phpize。好比,個人機器上同時有php7和php5.3.3。我當前準備爲php7安裝curl擴展。因此執行php7對應的phpizeurl
/usr/local/php7.0/bin/phpize
結果相似:.net
Configuring for: PHP Api Version: 20151012 Zend Module Api No: 20151012 Zend Extension Api No: 320151012
4.執行blog
./configure --with-php-config=/usr/local/php7.0/bin/php-config
說明:若是你的機器上只有一個php版本,大多時候不須要特別使用–with-php-config指明相應的php-config所在位置。get
5.執行make,以後會在./modules/目錄下生成curl.so文件源碼
6.執行make installstring
結果相似:
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,新的擴展才會生效。
原文:https://blog.csdn.net/qmhball/article/details/79015888