您好,登錄后才能下訂單哦!
這篇文章主要介紹如何解決php -v和phpinfo() 輸出的php版本不一致,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
php版本不一致是因為系統自帶的php版本和新安裝的php高級版本同時存在,并且終端和phpinfo加載的文件位置不一致導致的,其解決辦法就是將高版本php安裝目錄下的高版本“php-fpm”安裝目錄也加到終端配置文件。
這個的問題就是系統自帶的php版本和新安裝的php高級版本同時存在,并且終端和phpinfo()加載的文件位置不一致導致。
其中,
nginx服務解析phpinfo()是依賴php-fpm實現的,所以phpinfo()輸出的是php-fpm啟動的版本;
而終端執行php -v
是加載終端配置文件中設置的php安裝目錄對應的php版本的;
所以導致兩者php版本不一致主要就是啟動的php-fpm版本和終端配置的php版本不一致。
直接的解決辦法就是將高版本php安裝目錄下的高版本php-fpm安裝目錄也加到終端配置文件,讓系統自動加載高版本php-fpm即可。
配置~/.bash_profile:
export PATH=/usr/local/Cellar/php@7.2/7.2.23/bin:/usr/local/Cellar/php@7.2/7.2.23/sbin:${PATH}
如果系統使用的是zsh,就在~/.zshrc
文件最后添加:
source ~/.bash_profile
然后再執行
source ~/.zshrc
使配置生效,并重啟php-fpm
sudo killall php-fpm
sudo php-fpm -D
即可
1、查看當前php版本
php -v
得到以下輸出:
PHP 7.2.23 (cli) (built: Oct 10 2019 10:15:26) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.23, Copyright (c) 1999-2018, by Zend Technologies
2、查看php安裝位置
which php
或
whereis php
得到以下輸出:
/usr/local/Cellar/php@7.2/7.2.23/bin/php
3、查看php-fpm 版本和安裝位置
php-fpm -v
得到以下輸出:
PHP 5.6.30 (fpm-fcgi) (built: Oct 29 2017 20:31:21) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
which php-fpm
得到以下輸出:
/usr/sbin/php-fpm
以上查看一遍后,發現php加載的安裝目錄是新安裝的php高級版本,而php-fpm 還是mac系統自帶的低版本,原因是在系統終端配置文件中配置了新版本php安裝位置,但是沒有配置php-fpm的安裝位置,導致啟動php-fpm時自動加載的是系統低版本的php-fpm,當php框架依賴高版本php時,就會無法運行。
4、配置新版本php-fpm加載目錄
配置~/.bash_profile
:
export PATH=/usr/local/Cellar/php@7.2/7.2.23/bin:/usr/local/Cellar/php@7.2/7.2.23/sbin:${PATH}
如果系統使用的是zsh,就在~/.zshrc
文件最后添加:
source ~/.bash_profile
或直接將上述路徑配置設置在~/.zshrc
文件中。
然后執行source ~/.zshrc
使配置生效
5、查看當前php-fpm版本
(base) qingshan@qingshan ~ php-fpm -v PHP 7.2.23 (fpm-fcgi) (built: Oct 10 2019 10:15:34) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.23, Copyright (c) 1999-2018, by Zend Technologies
已經自動加載高版本的php-fpm了。
6、重啟php-fpm
終止后臺運行的php-fpm進程
sudo killall php-fpm
啟動php-fpm并后臺運行:
sudo php-fpm -D
此時phpinfo輸出的php版本信息就是最新的7.2版本
以上是如何解決php -v和phpinfo() 輸出的php版本不一致的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。