


Why are the PHP versions output by php -v and phpinfo() inconsistent?
The php version is inconsistent because the system's own php version and the newly installed php advanced version exist at the same time, and the location of the files loaded by the terminal and phpinfo are inconsistent. The solution is to put the higher version of php in the installation directory. The installation directory of the higher version "php-fpm" is also added to the terminal configuration file.
Recommended: "PHP Video Tutorial"
The problem is the PHP version that comes with the system and the new installation The advanced version of php exists at the same time, and the file locations loaded by the terminal and phpinfo() are inconsistent.
Among them,
nginx service parsing phpinfo() relies on php-fpm, so the output of phpinfo() is the version started by php-fpm;
And the terminal Executing php -v
loads the php version corresponding to the php installation directory set in the terminal configuration file;
Therefore, the main cause of the inconsistency between the two php versions is started php-fpm The version is inconsistent with the php version configured in the terminal.
The direct solution is to add the high version php-fpm installation directory under the high version php installation directory to the terminal configuration file, so that the system can automatically load the high version php-fpm.
Quick solution:
Configuration~/.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}
If the system uses zsh, add it at the end of the ~/.zshrc
file :
source ~/.bash_profile
Then execute
source ~/.zshrc
to make the configuration take effect, and restart php-fpm
sudo killall php-fpm
sudo php-fpm -D
Specific process:
1. Check the current php version
php -v
and get the following output:
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. Check the php installation location
which php
or
whereis php
and get the following output:
/usr/local/Cellar/php@7.2/7.2.23/bin/php
3. Check the php-fpm version and installation location
php-fpm -v
Get the following output:
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
Get the following output:
/usr/sbin/php-fpm
After checking the above , found that the installation directory loaded by php is the newly installed advanced version of php, and php-fpm is still the lower version that comes with the mac system. The reason is that the installation location of the new version of php is configured in the system terminal configuration file, but php-fpm is not configured. The installation location causes the system's lower version of php-fpm to be automatically loaded when starting php-fpm. When the php framework relies on a higher version of php, it will not run.
4. Configure the new version of php-fpm loading directory
Configuration~/.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}
If the system uses zsh, just ~/.zshrc
At the end of the file, add:
source ~/.bash_profile
or directly set the above path configuration in the ~/.zshrc
file.
Then execute source ~/.zshrc
to make the configuration take effect
5. Check the current php-fpm version
(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
The higher version of php has been automatically loaded -fpm.
6. Restart php-fpm
Terminate the php-fpm process running in the background
sudo killall php-fpm
Start php-fpm and run it in the background:
sudo php-fpm -D
At this time The PHP version information output by phpinfo is the latest version 7.2
The above is the detailed content of Why are the PHP versions output by php -v and phpinfo() inconsistent?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

As a PHP learner and developer, how can I not understand its history? The following PHP Chinese website will lead PHP enthusiasts to review the various historical versions of PHP.

Pagoda Panel is a powerful and easy-to-use server management panel that can help users easily manage websites, databases, FTP and other services. In the process of using the Pagoda Panel, sometimes you need to switch the PHP version to adapt to different website needs. This article will provide you with a simple guide for PHP version switching, and provide specific code examples to help readers quickly complete the PHP version switching operation. First, we need to log in to the Pagoda panel and enter the website settings page. Find the "Website" option in the left navigation bar and click

BTPanel is a powerful and easy-to-use server management panel that can help users easily manage servers, websites, databases and other services. As a website developer or administrator, it is very important to master the skills of switching PHP versions in the Pagoda panel. In this article, we will share how to operate and switch PHP versions in the Pagoda panel, and provide specific code examples to help readers better master this skill. 1. Log in to the Pagoda panel. First, enter the server IP address or domain name in the browser, and add the Pagoda

Eclipse is a widely used integrated development environment (IDE) that can be used to develop projects in various programming languages. When using Eclipse to develop PHP projects, it is sometimes necessary to update the PHP version to adapt to new features or fix bugs. This article will explain how to update the PHP version in Eclipse and provide specific code examples. 1. Preparations for updating the PHP version Before updating the PHP version, we need to ensure that Eclipse and the PHP development environment have been installed. in addition,

The meaning and importance of PHP version NTS PHP (Hypertext Preprocessor) is a widely used open source server-side scripting language that is used to develop dynamic web pages. PHP versions include NTS (Non-ThreadSafe) and TS (ThreadSafe). In this article, we will focus on the meaning and importance of NTS versions and provide some concrete code examples. The NTS version refers to the non-thread-safe version of PHP, which was originally designed to

When developing a website or application using PHP, version upgrades are a necessary task because each version brings new features and fixes known issues. However, PHP version upgrades can also introduce new bugs because the new version may no longer support the functionality or syntax of the older version. In this article, we will introduce how to deal with errors caused by PHP version upgrade to ensure the normal operation of the application. 1. Back up the application and server. Before upgrading the PHP version, you must back up the application and server. The backup application can be

Impact of PHP function version updates: Impact of new features: New features are introduced to facilitate the development of complex tasks. Fix the impact of the bug: Improve function behavior and improve code stability. Impact of behavior change: Most disruptive, requiring updates to code that uses the function. Best practices: Test updates in a test environment, check interactive code, and update affected dependencies.

New features of PHP7 version and their impact on mini program development. With the continuous development of technology, the Internet industry is also changing with each passing day. In recent years, mini programs have become a hot topic in mobile application development. At the same time, the release of PHP7 version has also become the focus of developers' attention. This article will explore the new features of the PHP7 version and analyze its impact on the development of small programs. 1. New features of PHP7 version As a major update of the PHP language, PHP7 version brings many new features and performance improvements. Here are a few important new features: Sex
