How to upgrade PHP in MacOS

Updated: January 10, 2024 By: Guest Contributor Post a comment

Introduction

Keeping PHP up to date on MacOS is crucial for developers to take advantage of the latest features, optimizations, and security enhancements. This step-by-step guide will walk you through the process of upgrading PHP on your MacOS system.

Prerequisites

Before beginning the PHP upgrade process on your Mac, make sure that you have:

  • A compatible version of MacOS
  • Administrative access to your system:
$ whoami
YourUsername
$ sudo -v
Password:

If the word ‘root’ appears after you type whoami, then you have administrative access.

Backing up Your Current PHP Configuration:

Ensuring you have a backup of your existing PHP configuration is important before making changes. You can do this simply by copying your current php.ini file to a backup location:

$ cp /etc/php.ini /etc/php.ini.backup

Installing Homebrew

Homebrew is the most popular package manager for MacOS, and it provides an easy way to install or upgrade PHP. If you do not have Homebrew installed:

/bin/bash -c "
$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
code>

Once installed, you can check Brew’s version and ensure it’s ready to use:

$ brew -v
Homebrew 3.0.0
Homebrew/homebrew-core (git revision 1234; last commit 2021-02-17)
Homebrew/homebrew-cask (git revision 5678; last commit 2021-02-17)

Uninstalling Your Existing PHP Version

If a version of PHP was previously installed via Brew, you should uninstall it before proceeding:

$ brew uninstall php

Upgrading to the Latest PHP Version

Installing PHP with Brew is straightforward. First, update Brew:

$ brew update

Then, to install the latest PHP version:

$ brew install php

After the installation completes, you can confirm the version of PHP installed:

$ php -v
PHP 8.1.0 (cli) (built: Aug 9 2023 12:00:00) ( NTS )

Configuring PHP After Installation

Basic configuration of PHP is necessary for better optimization:

$ cp /usr/local/etc/php/8.1/php.ini.default /usr/local/etc/php/8.1/php.ini
$ vi /usr/local/etc/php/8.1/php.ini

Within the php.ini file, you can adjust settings such as date.timezone, memory_limit, and others as needed for your environment.

Updating the System’s PATH

For the system to use the new PHP version by default, it must be in your PATH:

$ echo 'export PATH="/usr/local/opt/php/bin:$PATH"' >> ~/.bash_profile
$ source ~/.bash_profile

This will prioritize the new PHP installation when invoking the php command.

Switching PHP Versions

If you need to switch between PHP versions frequently, you can use php-version or brew link:

$ brew unlink [email protected]
$ brew link --overwrite --force php

Aforementioned steps are commonly used to switch to a specific PHP version on the MacOS command line.

Using a Version Manager

For advanced PHP management, consider using a PHP version manager such as phpenv or PHPBrew.

PHPBrew

HasBeenSet up by executing:

$ curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrew
$ chmod +x phpbrew
$ sudo mv phpbrew /usr/local/bin/phpbrew

Installing a specific PHP version with PHPBrew:

$ phpbrew init
$ phpbrew install 7.4.0 +default

phpenv

Can be installed via:

$ brew install phpenv
$ phpenv install 7.4.0

Both tools allow you to install multiple versions of PHP and switch between them as needed.

Troubleshooting

Common issues when upgrading PHP involve missing extensions or path conflicts. Always ensure that the appropriate PHP extensions are installed, and check that the correct version of PHP is referenced in your PATH.

Conclusion

This comprehensively guides you through upgrading PHP on your MacOS. Following these steps will ensure you run the latest version of PHP, allowing you to leverage new features, enjoy performance improvements, and maintain high levels of security within your development environment.