RinoDrummer icon

Script aggiornamento PHP

RinoDrummer | PRO | 08/23/21 10:20:34 AM UTC (Edited) | 0 ⭐ | 246 👁️ | Never ⏰ | []
Batch |

2.34 KB

|

None

|

0 👍

/

0 👎

@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
)
 

Comments