先前參考 如何 實現PHP多版本的 共存 和 切換? 實現了Linux(Ubuntu/CentOS)系統下,PHP多版本的切換,但是在 Mac OS 下,由於用戶權限控制的比較嚴格,文章里提到的腳本運行失敗(沒達到預期效果)。后面采用了其他方式實現了 通過執行腳本自由切換PHP版本:
1、新建 2 個 .bash_profile 文件模板,文件名分別為
/Users/jianbao/.bash_profile_5.6
/Users/jianbao/.bash_profile_7.0
.bash_profile_5.6 文件內容為:
alias ll='ls -alF' alias la='ls -A' alias l='ls -CF' export GOROOT=/usr/local/go export GOPATH=/Users/jianbao/GoProjects/go-study export PHP=/usr/local/php/php-5.6 export PATH=$GOROOT/bin:$GOPATH/bin:$PHP/bin:$PHP/sbin:/usr/local/nginx/sbin:/usr/local/mysql:/usr/local/Cellar/subversion/1.9.4/bin:$PATH
.bash_profile_7.0 文件內容為:
alias ll='ls -alF' alias la='ls -A' alias l='ls -CF' export GOROOT=/usr/local/go export GOPATH=/Users/jianbao/GoProjects/go-study export PHP=/usr/local/php/php-7.0 export PATH=$GOROOT/bin:$GOPATH/bin:$PHP/bin:$PHP/sbin:/usr/local/nginx/sbin:/usr/local/mysql:/usr/local/Cellar/subversion/1.9.4/bin:$PATH
2、新建 3 個腳本工具,文件名分別為:
/Users/jianbao/1/stop.sh
/Users/jianbao/1/to-php-5.6.sh
/Users/jianbao/1/to-php-7.0.sh
stop.sh 文件內容為:
sudo /usr/local/mysql/mysql stop #sudo /usr/local/nginx/sbin/nginx -s stop sudo kiiall nginx sudo killall php-fpm
to-php-5.6.sh 文件內容為:
source /Users/jianbao/1/stop.sh cat /Users/jianbao/.bash_profile_5.6 > /Users/jianbao/.bash_profile source /Users/jianbao/.bash_profile sudo /usr/local/mysql/mysql start sudo /usr/local/nginx/sbin/nginx sudo /usr/local/php/php-5.6/sbin/php-fpm -D
to-php-7.0.sh 文件內容為:
source /Users/jianbao/1/stop.sh cat /Users/jianbao/.bash_profile_7.0 > /Users/jianbao/.bash_profile source /Users/jianbao/.bash_profile sudo /usr/local/mysql/mysql start sudo /usr/local/nginx/sbin/nginx sudo /usr/local/php/php-7.0/sbin/php-fpm -D
3、使用方式
切換到 PHP-5.6,執行一下 ./to-php-5.6.sh;
切換到 PHP-7.0,執行一下 ./to-php-7.0.sh;
大功告成!