El problema con esto es que la versión de php que viene con el sistema y la versión avanzada de php recién instalada existen al mismo tiempo, y la ubicación del archivo cargado por la terminal y phpinfo () es inconsistente.
entre ellos,
El análisis del servicio Nginx phpinfo () es implementado por php-fpm, por lo que phpinfo () genera la versión iniciada por php-fpm;
La ejecución del terminal php -v
consiste en cargar la versión de php correspondiente al directorio de instalación de php establecido en el archivo de configuración del terminal;
Por lo tanto, la inconsistencia de las dos versiones de PHP se debe principalmente a la inconsistencia de la versión php-fpm iniciada y la versión php configurada en el terminal .
La solución directa es agregar el directorio de instalación php-fpm de la versión alta en el directorio de instalación de php de la versión alta al archivo de configuración del terminal y dejar que el sistema cargue automáticamente la versión php-fpm de la versión alta.
Solución rápida:
Configurar ~ / .bash_profile:
export PATH=/usr/local/Cellar/[email protected]/7.2.23/bin:/usr/local/Cellar/[email protected]/7.2.23/sbin:${PATH}
Si el sistema usa zsh, ~/.zshrc
agréguelo al final del archivo:
source ~/.bash_profile
Y luego ejecutar
source ~/.zshrc
Haga que la configuración sea efectiva y reinicie php-fpm
sudo killall php-fpm
sudo php-fpm -D
Poder
Proceso específico:
1. Verifique la versión actual de php
php -v
Obtenga el siguiente resultado:
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. Verifique la ubicación de instalación de php
which php
o
whereis php
Obtenga el siguiente resultado:
/usr/local/Cellar/[email protected]/7.2.23/bin/php
3. Verifique la versión de php-fpm y la ubicación de instalación
php-fpm -v
Obtenga el siguiente resultado:
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
Obtenga el siguiente resultado:
/usr/sbin/php-fpm
Después de verificar lo anterior, se encuentra que el directorio de instalación cargado por php es la versión avanzada de php recién instalada, y php-fpm sigue siendo la versión baja que viene con el sistema mac. La razón es que la nueva versión de la ubicación de instalación de php está configurado en el archivo de configuración del terminal del sistema, pero no hay Configure la ubicación de instalación de php-fpm, lo que hace que la versión baja de php-fpm del sistema se cargue automáticamente cuando se inicia php-fpm. en la versión alta de php, no se ejecutará.
4. Configure la nueva versión del directorio de carga php-fpm
Configuración ~/.bash_profile
:
export PATH=/usr/local/Cellar/[email protected]/7.2.23/bin:/usr/local/Cellar/[email protected]/7.2.23/sbin:${PATH}
Si el sistema usa zsh, ~/.zshrc
agréguelo al final del archivo:
source ~/.bash_profile
O establezca directamente la configuración de ruta anterior en el ~/.zshrc
archivo.
Luego ejecute para source ~/.zshrc
que la configuración surta efecto
5. Ver la versión actual de 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
La versión alta de php-fpm se ha cargado automáticamente.
6. Reinicie php-fpm
Termine el proceso php-fpm que se ejecuta en segundo plano
sudo killall php-fpm
Inicie php-fpm y ejecútelo en segundo plano:
sudo php-fpm -D
En este momento, la información de la versión de php generada por phpinfo es la última versión 7.2
Acumula un poquito todos los días