@echo off @title Aggiornamento dell'installazione di PHP @rem Per rendere funzionante questo script è necessario far puntare la directory di PHP @rem nei settaggi di Apache a "latest" (esempio: "C:\php\latest\php%MAJOR_VERSION%apache2_4.dll"). @rem Inoltre, se si vuole permettere l'importazione di php.ini, è necessario avere il @rem suddetto file nella directory superiore a "latest" (esempio: "C:\php\php.ini"). :aval-versions @echo Versioni disponibili: @echo. @rem Mostra tutte le versioni disponibili @dir /a:d /b | findstr /v "alt" | findstr /v "ext" | findstr /v "latest" @echo. set /p ver="Quale versione deve essere impostata come corrente? " @echo. if exist %ver% ( @rem Rimuove il symlink a latest e ne crea uno nuovo alla versione specificata rmdir latest mklink /d latest %ver% @echo. :php-ini set /p importPHPINI="Importare php.ini? (Y/N) [Y]: " if [%importPHPINI%]==[] set importPHPINI=y if /i not [%importPHPINI%]==[%importPHPINI:y=%] ( @echo Creazione link al file php.ini... mklink "latest/php.ini" "php.ini" ) else ( if /i not [%importPHPINI%]==[%importPHPINI:n=%] ( @echo Importazione php.ini ignorata. ) else ( echo La scelta indicata non è presente fra quelle disponibili. goto php-ini ) ) @echo. @rem Riavvio di Apache @net stop Apache2.4 net start Apache2.4 @rem Crea un link simbolico a PHP come eseguibile in WSL :wsl-symlink set /p createSymlinkWSL="Creare link simbolico per PHP come runtime in WSL (richiede password)? (Y/N) [Y]: " if [%createSymlinkWSL%]==[] set createSymlinkWSL=y if /i not [%createSymlinkWSL%]==[%createSymlinkWSL:y=%] ( @echo Creazione link simbolico in /usr/bin/php (WSL)... wsl [ ! -f "/usr/bin/php" ] && wsl ln -s "/mnt/c/php/latest/php.exe" "/usr/bin/php" ) else ( if /i not [%createSymlinkWSL%]==[%createSymlinkWSL:n=%] ( @echo Creazione link simbolico in /usr/bin/php (WSL) ignorata. ) else ( echo La scelta indicata non è presente fra quelle disponibili. goto wsl-symlink ) ) @echo. @pause @exit ) else ( echo Versione indicata non disponibile. echo. goto aval-versions )