如何 實現PHP多版本的 共存 和 切換?


編譯PHP時指定路徑

./configure --prefix=/opt/php/php-5.6
make && make install

這樣可以PHP版本就可以安裝到一個特別的路徑,而不是安裝到 /usr/local/ 下。多個版本的 PHP 分別保存在各自的目錄中,根據程序需要啟動不同的 PHP。

/usr/local/php/php-5.6/bin/php  server.php

使用軟鏈接

ln -s /usr/local/php/php-5.6/bin/php /usr/local/bin/php
# 或
ln -s /usr/local/php/php-5.4/bin/php /usr/local/bin/php

php -v

如果要切換默認PHP的版本,只需要重建軟鏈接即可。

編寫自動切換版本腳本

to_php56.sh,切換到默認 PHP 到 5.6 版本

rm /usr/local/bin/php
rm /usr/local/bin/phpize
rm /usr/local/bin/php-config
ln -s /usr/local/php/php-5.6/bin/php /usr/local/bin/php
ln -s /usr/local/php/php-5.6/bin/phpize /usr/local/bin/phpize
ln -s /usr/local/php/php-5.6/bin/php-config /usr/local/bin/php-config
echo "to php5.6 done"

to_php70.sh,切換到默認 PHP 到 7.0 版本

rm /usr/local/bin/php
rm /usr/local/bin/phpize
rm /usr/local/bin/php-config
ln -s /usr/local/php/php-7.0/bin/php /usr/local/bin/php
ln -s /usr/local/php/php-7.0/bin/phpize /usr/local/bin/phpize
ln -s /usr/local/php/php-7.0/bin/php-config /usr/local/bin/php-config
echo "to php 7.0 done"

  


 

注意:別忘了

1、去掉 .bash_profile  文件中,對 PHP 路徑的配置(附:Mac Pro 修改環境變量);

2、刪除掉 /usr/bin/php 文件;

后記1:

在 Mac 電腦上,刪除不了系統自帶的 PHP-5.6.25(沒有權限,sudo 也不行),文件路徑為 /usr/bin/php,頓時感覺 Mac 在安全性這塊(用戶權限)做的非常好。最后的解決方案是,修改 .bash_profile 文件,詳細參考:Mac Pro 修改環境變量

后記2:

換成了其他腳本方式,實現了 Mac Pro 的PHP多版本切換,詳情查看:Mac Pro 實現 PHP-5.6 與 PHP-7.0 等多版本切換

 

 

延伸閱讀:

Mac Pro 編譯安裝 PHP 5.6.21 及 問題匯總

記 Mac 升級后,編譯安裝 PHP-5.6.28 / PHP-7.0 報錯修復過程


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM