Utilizzo delle variabili di ambiente in PHP

Definizione delle variabili di ambiente

Le variabili di ambiente PHP consentono agli script di raccogliere determinati tipi di dati in modo dinamico dal server. Ciò supporta la flessibilità degli script in un ambiente server potenzialmente mutevole. Ad esempio, la variabileSITE_HTMLROOT fornita da (mt) Media Temple fornirà automaticamente il percorso corretto per la radice del documento su qualsiasi server Grid, senza richiedere alcuna modifica nello script. (mt) Media Temple fornisce diverse decine di variabili come questa per la vostra convenienza.

LEGGIMI PRIMA

Questo articolo è fornito come cortesia. L’installazione, la configurazione e la risoluzione dei problemi di applicazioni di terze parti non rientrano nell’ambito del supporto fornito da (mt) Media Temple. Si prega di prendere un momento per rivedere la dichiarazione di sostegno.

Uso ed esempi

È possibile accedere a queste variabili utilizzando gli array arra _SERVER e arra _ENV.

Ad esempio, se si desidera utilizzare la variabileSITE_HTMLROOT menzionata sopra, è possibile creare una variabile nello script PHP simile alla seguente:

Filename: environment.php

$site_path_var = $_SERVER;

Questo creerà una variabile con un valore simile al seguente:

/home/00000/domains/example.com/html

Se vuoi testare l’output della variabile, aggiungi un’istruzione echo al tuo script PHP. Ad esempio:

Nome file: ambiente.php

$site_path_var = $_SERVER;echo $site_path_var;

Ora visita il tuo script nel tuo browser per vedere l’output.

NOTA:

$_SERVER e $_ENV sono array superglobali PHP. Non devono essere dichiarate come variabili globali. Non inserire la seguente riga nel file:

Nomefile: ambiente.php

global $_SERVER;

Uso pratico

Sulla griglia, è particolarmente utile utilizzare alcune variabili di ambiente selezionate, per tre motivi. Innanzitutto, se decidi di riutilizzare uno script su un dominio diverso sulla griglia, non dovrai modificare tutte le variabili. In secondo luogo, le variabili sono spesso più convenienti del percorso lungo e dei nomi di server utilizzati per l’architettura della griglia. In terzo luogo, il bilanciamento del carico della griglia richiede occasionalmente lo spostamento di siti e database su macchine fisiche diverse, che possono modificare l’ambiente. Questo non è un evento comune, ma è una parte essenziale della funzionalità della griglia.

  • $_SERVER
    Il percorso completo alla radice del documento del tuo sito, restituisce l’output come/home/00000/domains/example.com / html.
  • $_ENV – Il nome del server di database interno, restituisce l’output come internal-db.s00000.gridserver.com.

Elenco completo delle variabili fornite

Crea un phpinfo.pagina php per visualizzare tutte le variabili fornite da (mt) Media Temple. Vedi il nostro ” Come posso creare un phpinfo.pagina php?”articolo per i dettagli, prestando attenzione alla sezione Variabili PHP della pagina per le informazioni rilevanti.

Phpinfo_vars

Impostazione delle proprie variabili

In PHP

Sulla griglia, è possibile impostare le proprie variabili di ambiente che dureranno all’interno della sessione che le ha create. Ad esempio, se si desidera utilizzare una variabile di ambiente personalizzata in uno script, è possibile aggiungere le seguenti righe per creare e quindi utilizzare una variabile:

Filename: environment.php

$_ENV="new_variable";$new_variable_var = $_ENV;

Nota: Queste variabili di ambiente non dureranno al di fuori della sessione in cui sono state create.

In .htaccess

Puoi anche avere variabili di ambiente impostate da Apache per l’uso nei tuoi script, tramite un file.htaccess, usando SetEnv o nelle regole di riscrittura. Queste variabili devono iniziare con ‘HTTP_’ per motivi di sicurezza.

SetEnv HTTP_MY_VARIABLE "my value"

User-friendly server information

Se si desidera visualizzare le informazioni di sistema in un formato più user-friendly, controllare la Guida del server Grid. Le sezioni Connessioni al database e Percorsi di sistema contengono informazioni utili sull’ambiente server.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.