我參考https://ckon.wordpress.com/2015/08/06/put-mysql-functions-back-into-php-7/的做法, 測試PHP 7.2.2將mysql編入, 來執行舊的應用程式
PHP 7.2下載: https://secure.php.net/downloads.php
我的測試環境是Linux (Debian Wheezy), 將目前PHP 7.2.2最新版的Source Code抓回來
wget -O php-7.2.2.tar.gz http://tw2.php.net/get/php-7.2.2.tar.gz/from/this/mirror
解壓縮php-7.2.2.tar.gz
tar zxvf php-7.2.2.tar.gz
進入PHP Source Code的ext目錄, 後續取得mysql擴展
cd php-7.2.2/ext
照上述網站的教學, 將GitHub上的mysql擴展下載
git clone https://github.com/php/pecl-database-mysql mysql --recursive
這時ext目錄下新增了mysql, 回到PHP 7.2.2目錄, 移除configure檔案, 以靜態方式編譯入PHP
rm configure
./buildconf --force
./configure --with-mysql
若你還有其他擴展函數請一同加入
編譯PHP 7
make; make install
檢查PHP是否將mysql編入
php -m
有看到mysql就是成功了
要享受PHP 7的好處, 有個重要之處, 打開Zend OPCache, 編輯php.ini檔案
nano /etc/php7/php.ini
這裡請明確指定你真實的php.ini路徑
到[opcache]設定值章節
將OPCache加入, 以下是範例
zend_extension=opcache.so
[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=1
標上紅字的地方就是需要加入或修改之處
OPCache其他設定值可參考網路上的做法
啟動你的Web Server, 享受舊PHP應用程式也能在PHP 7上的好處吧! 不過還是建議, 更新應用程式支援PHP 7才是根本做法
