Cambiare versione di PHP di sistema su MAC OSX
In questa guida spieghiamo velocemente come cambiare versione di PHP su sistemi MAC in modo tale che qualsiasi Web Server locale ( ad esclusione di programmi come MAMP che non utilizzano librerie di sistema ma proprie librerie ) possa girare con l’ultima versione di PHP e le estensioni di cui necessitiamo (Xdebug, OPCache et..) .
Ci sono diversi modi uno di questi è Macports sicuramente tra i più diffusi. Noi oggi ci concentreremo su HomeBrew.
Il concetto è questo : ci serve un modo per installare PHP e tutte le dipendenze ( stesso discorso per altri pacchetti che il MAC non ha di default) . Cosa dobbiamo fare? semplice avere un modo da terminale per installare tutte le dipendenze in una directory e una serie di istruzioni per poterle utilizzare, importare, eliminare, aggiornare e risolvere una serie di compiti. Macports e Homebrew servono esattamente a questo e non fanno nulla di particolarmente magico. Una volta installati potremo utilizzare tramite CLI dei comandi per effettuare le operazioni che desideriamo.
Per Homebrew è tutto spiegato in modo semplicissimo a questo indirizzo: https://brew.sh/index_it.html
Vediamo ad esempio 2 semplici comandi per installare PHP 7 senza altri pacchetti :
Macports: sudo port install php70
Homebrew: brew install php70
Cosa accade dopo aver lanciato questi comandi ? Verranno scaricate le librerie PHP e posizionate in una directory specifica e nulla verrà installato fuori da quella directory.
“Homebrew installa i pacchetti nelle loro directory e crea un collegamento simbolico in /usr/local
.”
Ora non resta altro che aggiungere la PATH alla CLI e per farlo dobbiamo lanciare questo comando:
export PATH=”$(brew –prefix php70)/bin:$PATH”
In questo modo ci assicuriamo che da Command Line utilizziamo effettivamente le librerie appena installate.
Per modificare il php.ini è sufficiente recarsi nella directory /usr/local/etc/php/7.0/
Questa guida non è un manuale completo ma serve per dare veloci indicazioni sui punti chiave di un processo. In questo caso abbiamo approcciato a questo metodo quando non volevamo installare symfony in MAMP o simili ma utilizzare il Web Server integrato (” php app/console server:run “) in PHP con moduli installati e in versione 7.0.