69

I try to update my PHP version to 7.4 on macOS Catalina with brew.

I did brew install php@7.4

If I check my version php -v, I still see the old version PHP 7.3.11?

What do I have to do?

Update:

After brew doctor I get:

Warning: Homebrew's sbin was not found in your PATH but you have installed formulae that put executables in /usr/local/sbin. Consider setting the PATH for example like so: echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.profile

meez
  • 3,783
  • 5
  • 37
  • 91

6 Answers6

194

You can find my similar answer for php@7.2.

  • brew install php@7.4
  • brew link --force --overwrite php@7.4
  • brew services start php@7.4
  • export PATH="/usr/local/opt/php@7.4/bin:$PATH"
  • export PATH="/usr/local/opt/php@7.4/sbin:$PATH"
chenrui
  • 8,910
  • 3
  • 33
  • 43
23

try:

brew update
brew upgrade php
php -v
brew services start php

or

brew services restart php

if you use apache server:

sudo apachectl restart

if you use ngnix

sudo nginx -s reload

Edit:

brew unlink php@7.3
brew link php@7.4
Salines
  • 5,674
  • 3
  • 25
  • 50
7

If anyone want to downgrade php from latest 8.1.2 to 7.4 on systems demand, try the below commands with homebrew: Installing PHP 7.4 :

brew install php@7.4
brew services restart php
brew unlink php@8.1
brew link php@7.4
echo 'export PATH="/usr/local/opt/php@7.4/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/usr/local/opt/php@7.4/sbin:$PATH"' >> ~/.zshrc

Or

export PATH="/usr/local/opt/php@7.4/bin:$PATH"
export PATH="/usr/local/opt/php@7.4/sbin:$PATH" 
Peter Csala
  • 17,736
  • 16
  • 35
  • 75
Shimanto
  • 283
  • 5
  • 11
1

Using terminal of MacOS. Don't use terminal in vscode.

Thiên Trần
  • 51
  • 1
  • 7
  • Oddly enough, this did the trick even though I've linked/unlinked taps various times successfully from the VS Code terminal. – Justin Hammond Jan 14 '22 at 07:27
0

I recently faced this issue, all the suggestion here didn't work until I ran:

xcode-select --install

Then ran the command I was trying before and the error stopped, for my case it was php

dyld: Library not loaded: /usr/local/opt/openldap/lib/libldap-2.4.2.dylib Referenced from: /usr/local/opt/php@7.4/bin/php Reason: image not found zsh: abort php -v

Dharman
  • 30,962
  • 25
  • 85
  • 135
0
  1. I move to directory by: cd /usr/local
  2. Find the file location by: find /usr/local/ -name libphp7.so. (Then get the file location at: /usr/local//Cellar/php@7.4/7.4.23/lib/httpd/modules/libphp7.so. I copy this.)
  3. I open the file by: sudo vim /etc/apache2/httpd.conf
  4. Look for the line by: /libphp7.so
  5. Uncomment the line and update the line by: LoadModule php7_module /usr/local//Cellar/php@7.4/7.4.23/lib/httpd/modules/libphp7.so
  6. Restart apache by: sudo apachectl restart
  7. Verify PHP by accessing http://localhost/phpinfo.php