Base di conoscenze

1 000 FAQ, 500 tutorial e video esplicativi. Qui ci sono delle soluzioni!

Modificare la versione di PHP in CLI

Questa guida spiega come modificare la versione di PHP utilizzata in linea di comando (PHP CLI) su un Hosting Web Infomaniak.

 

Premessa

  • Questa guida è utile se è necessario regolare temporaneamente i parametri per uno script specifico o per una sessione PHP eseguita in linea di comando (CLI).
  • Per modificare la versione generale di PHP utilizzata dal tuo hosting sul server web (FPM/Apache) tramite il Manager Infomaniak, consulta questa altra guida.

 

Versione predefinita di PHP in linea di comando

Quando si esegue il comando php (di solito tramite /usr/bin/php), è la versione predefinita di PHP configurata sul server che viene utilizzata. Questa versione può cambiare nel tempo in base agli aggiornamenti della piattaforma.

Per conoscere la versione esatta attualmente attiva sul tuo hosting, esegui:

php -v

Per garantire la stabilità dei tuoi script, è consigliabile utilizzare una versione esplicita (php7.4, php8.0, php8.1, ecc.) o modificare la tua variabile PATH per puntare alla directory della versione desiderata (ad esempio /opt/php8.1/bin).

 

Modificare la versione di PHP utilizzata in CLI

Esistono due file principali che possono essere utilizzati per configurare la versione di PHP caricata automaticamente nella tua sessione SSH:

 

1. Utilizzo di ~/.bashrc (consigliato)

Il file .bashrc viene letto da Bash all'apertura di un shell interattivo (non-login), cioè nella maggior parte dei casi quando apri una sessione SSH normale o esegui comandi tramite strumenti di distribuzione.

  1. Crea il file ~/.bashrc se non esiste, quindi aprilo:

    touch ~/.bashrc
    nano ~/.bashrc
  2. Aggiungi la seguente riga per specificare la versione di PHP desiderata (esempio: PHP 8.1):

    export PATH="/opt/php8.1/bin:$PATH"
  3. Ricarica il tuo ambiente:

    source ~/.bashrc
  4. Verifica la versione attualmente utilizzata:

    php -v
    which php

    Dovresti vedere un percorso del tipo /opt/php8.1/bin/php.

 

2. Utilizzo di ~/.profile (alternativa)

Il file .profile viene letto solo quando il shell viene avviato in modalità login (ad esempio durante una prima connessione SSH). Se il tuo ambiente non carica automaticamente .bashrc, puoi definirvi direttamente la versione di PHP.

  1. Crea il file ~/.profile se non esiste, quindi aprilo:

    touch ~/.profile
    nano ~/.profile
  2. Aggiungi la seguente riga:

    export PATH="/opt/php8.1/bin:$PATH"
  3. Ricarica il tuo ambiente:

    source ~/.profile

 

3. Caricare .bashrc dagli altri profili

Per garantire che la configurazione venga caricata in tutti i tipi di sessioni (login e non-login), è consigliabile includere nei tuoi file ~/.bash_profile e ~/.profile la seguente riga:

if [ -f ~/.bashrc ]; then . ~/.bashrc; fi

In questo modo, la tua configurazione PHP definita in .bashrc verrà sempre applicata, indipendentemente dal modo in cui viene aperta la sessione SSH.

 

Eseguire una versione specifica occasionalmente

Se desideri eseguire uno script con una versione specifica di PHP senza modificare il tuo ambiente, puoi chiamare direttamente il binario corrispondente:

/opt/php8.1/bin/php mon_script.php
/opt/php8.2/bin/php -v

 

Dopo questi passaggi, la versione di PHP scelta verrà caricata automaticamente ad ogni apertura di una nuova sessione, e i tuoi script CLI si eseguiranno con la versione desiderata.


Questa FAQ è stata utile?