devdev / in the loop

Installare PHP su macOS Monterey con homebrew (anche su M1)

L’ultima versione di macOS 12 Monterey non porta più con sé preinstallato PHP. Difatti, una nota nel conf http.conf di Apache riporta:

#PHP was deprecated in macOS 11 and removed from macOS 12

Per fortuna possiamo installare PHP manualmente scegliendo una delle versioni disponibili, incluse 5.7, 7.4 e 8.1 con l’aiuto di Homebrew.

Installiamo homebrew

Se non abbiamo homebrew installato sul nostro mac, installiamolo velocemente con un solo comando, come da sito ufficiale:

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

Aggiungiamo il repository

Tramite il comando tap, diciamo a brew di aggiungere un nuovo repository al suo elenco interno, in modo da poter installare pacchetti supplementari. Di default, tap tiene conto che il repository provenga da Github. Difatti, quello che ci serve è shivammathur/homebrew-php. Aggiungiamolo quindi così:

brew tap shivammathur/php

A questo punto, scegliamo la versione di PHP che vogliamo installare, qui installeremo l’ultima disponibile, la 8.1:

brew install shivammathur/php/php@8.1

Le opzioni sono:

  • php@5.6
  • php@7.0
  • php@7.1
  • php@7.2
  • php@7.3
  • php@7.4
  • php@8.0
  • php@8.1

Una volta terminata la procedura, linkiamo la versione PHP, così da poter utilizzare il comando php direttamente:

brew link --overwrite --force php@8.1

Riavviamo il terminale

Ed eseguiamo:

php -v

A questo punto il sistema vi confermerà che la versione attuale è quella appena installata:

Luca-Murante:~ luca$ php -v
PHP 8.1.3 (cli) (built: Feb 22 2022 09:40:25) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.3, Copyright (c) Zend Technologies
with Zend OPcache v8.1.3, Copyright (c), by Zend Technologies

Cambiare versione

Se volessimo cambiare la versione, ripetiamo semplicemente questa guida dal principio specificando la versione da installare e poi ricordiamo di effettuare il link

Rimuovere vecchie versioni

Se abbiamo installato vecchie versioni da una vecchia installazione di Homebrew, possiamo rimuoverle:

rm -rf $(brew --cellar)/php

Rimuoviamo anche i vecchi Launch Agents, se presenti:

rm -f ~/Library/LaunchAgents/homebrew.mxcl.php*
rm -f /Library/LaunchAgents/homebrew.mxcl.php*
rm -f /Library/LaunchDaemons/homebrew.mxcl.php*

A questo punto rimuoviamo il vecchio repository:

brew untap homebrew/php

..e facciamo un po’ di pulizia:

brew cleanup
Questo articolo ti è stato utile?
PHP – LETTURA 6 MINUTI PHP 8: l’operatore null-safe
L’introduzione dell’operatore null coalescing con PHP 7 è stato un buon passo avanti per la pulizia del codice, ma non…
Laravel – LETTURA 4 MINUTI Aggiungere phpMyAdmin a Laravel Sail
Anche se a questo punto lo sapete già, è giusto dire che phpMyAdmin è sicuramente il tool dbms open  source…
PHP – LETTURA 4 MINUTI Usare glob() in PHP per elencare i file di una directory
Spesso abbiamo utilizzato (lo so, l’avete fatto anche voi) la combinazione di opendir(), readdir() e closedir() per elencare i file…
Docker – LETTURA 13 MINUTI Sviluppare PHP utilizzando Docker con Apache, MySQL e phpMyAdmin
La Containerization (che in italiano dovrebbe corrispondere alla parola bruttina Containerizzazione) è la tecnologia che negli ultimi anni è sicuramente…
Roba figa da
if (weekend) {
    relax();
}
la nostra newsletter, ogni tanto.