Installare versioni multiple di PHP con XAMPP in Windows
Per gestire più versioni di PHP in Windows è possibile installare diverse macchine virtuali o utilizzare strumenti come Vagrant o Docker.
Nel caso in cui si volesse invece utilizzare XAMPP si può procedere nel seguente modo (forse non è la soluzione ottimale e più corretta, ma funziona!).
Al momento è stato testato per lo switch di versioni minori, nel caso corrente tra PHP 5.5 e 5.6.
1) Nella directory di installazione (solitamente C:\xampp) rinominare la directory "php" in "php5.5" (o in base alla versione corrente)
2) Creare, sempre in C:\xampp, una nuova directory "php5.6"
3) Scaricare il file .zip o .7z della versione portable di XAMPP con la versione di PHP desiderata da qui: http://portableapps.com/apps/development/xampp
4) Decomprimere il file scaricato e copiare il contenuto della cartella php in quella appena creata in C:\xampp
5) A questo punto tramite file .bat si può automatizzare lo switch tra le versioni.
NOTA: prima di cambiare versione fermare il webserver Apache e riavviarlo solo dopo lo switch
Creare il file set-php-5.5.bat con questo contenuto:
@echo off
rmdir C:\xampp\php
mklink /J C:\xampp\php C:\xampp\php5.5
echo Impostata la versione di PHP 5.5
pause
E il file set-php-5.6.bat :
@echo off
rmdir C:\xampp\php
mklink /J C:\xampp\php C:\xampp\php5.6
echo Impostata la versione di PHP 5.6
pause
I due files possono essere portati nel desktop tramite un collegamento per gestire più facilmente il cambio di versione.
Il funzionamento è molto semplice: per non modificare altri files di configurazione di XAMPP in cui sono indicate le directory corrette di PHP (come ad esempio il file httpd-xampp.conf) tramite i files .bat è possibile creare al volo delle junctions (links) tra la directory php e quella della versione corretta, in modo del tutto trasparente al resto dell'installazione.
Prima della creazione viene sempre cancellata la junction esistente.
In questo modo i vari files di xampp punteranno sempre alla directoy "php" che conterrà però di volta in volta la versione desiderata.
Se si hanno anche altre versioni è possibile creare altrettanti files .bat modificando la directory di destinazione della giunzione.
La stessa procedura è utilizzabile anche nel caso in cui si volesse avere la stessa versione di PHP ma con configurazioni diverse (ad esempio con librerie diverse installate o altri parametri di configurazione).

Commenti