Syntax:
Funkciu getenv () je možné použiť s argumentom alebo bez neho. Keď táto funkcia použije argumenty, vráti hodnotu reťazca, a keď nepoužije žiadny argument, vráti pole. Nižšie sú uvedené obidve syntaxe tejto funkcie:
reťazec getenv (reťazec $ varname [, bool $ local_only = false])Podľa vyššie uvedenej syntaxe môže mať funkcia getenv () dva argumenty. Prvý argument je povinný a používa sa na získanie názvu premennej prostredia, ktorý sa vyžaduje na čítanie. Druhý argument je voliteľný s predvolenou hodnotou FALSE. Ak sa v druhom argumente použije hodnota TRUE, táto funkcia vráti iba premenné lokálneho prostredia.
pole getenv ()Podľa vyššie uvedenej syntaxe možno funkciu getenv () volať bez akýchkoľvek argumentov.
Príklad 1: Použitie premennej getenv () bez argumentu
Nasledujúci príklad ukáže zoznam premenných prostredia nainštalovanej verzie PHP. Vytvorte súbor PHP s nasledujúcim skriptom, aby ste pomocou funkcie getenv () získali zoznam premenných prostredia.
Funkcia getenv () sa volá v skripte bez akýchkoľvek argumentov a vrátené hodnoty sa ukladajú do poľa s názvom $ env_array. Hodnoty tohto poľa sa tlačia pomocou foreach slučka.
// Zavolajte funkciu getenv () bez argumentu$ env_array = getenv ();
ozvena “
Zoznam premenných prostredia s hodnotami je:
";// Vypíše všetky názvy premenných prostredia s hodnotami
foreach ($ env_array ako $ key => $ value)
echo "$ key => $ value
";
?>
Výkon:
Po spustení skriptu zo servera sa objaví nasledujúci výstup. Zobrazuje zoznam všetkých premenných prostredia PHP. Tento výstup sa môže líšiť v závislosti od verzie PHP a operačného systému, v ktorom je PHP spustené.
Príklad 2: Prečítajte si konkrétne premenné prostredia
Nasledujúci príklad ukazuje spôsob čítania konkrétnych hodnôt prostredia. Vytvorte súbor PHP s nasledujúcim skriptom.
Štyri premenné prostredia sa tlačia pomocou funkcie getenv (). "JAZYK" sa používa vo funkcii getenv () na čítanie, ktorý jazyk je momentálne nastavený pre skript PHP. „LC_TIME“ sa používa vo funkcii getenv () na čítanie použitého názvu formátovania dátumu a času v PHP. „APACHE_LOG_DIR“ sa používa vo funkcii getenv () na čítanie adresára protokolov Apache. „CESTA“ sa používa vo funkcii getenv () na čítanie hodnôt uložených v ceste.
// Vytlačte názov použitého jazykaozvena “ Jazyk: „ . getenv („JAZYK“). „
";
// Vytlačí použitý názov formátovania dátumu a času
ozvena “ Miestny čas: „ . getenv ("LC_TIME"). „
";
// Vypíše názov adresára protokolov servera Apache
ozvena “ Adresár denníka Apache: „ . getenv ("APACHE_LOG_DIR"). „
";
// Vypíše hodnoty premennej PATH
ozvena “ Hodnoty PATH sú: „ . getenv ("CESTA");
?>
Výkon:
Po spustení skriptu zo servera sa objaví nasledujúci výstup. Zobrazuje hodnoty štyroch premenných prostredia.
Príklad 3: Definujte a prečítajte premennú prostredia
Funkcia getenv () vracia zoznam vstavaných premenných prostredia PHP. Ak však programátor potrebuje vytvoriť akúkoľvek novú premennú prostredia pre účely programovania, môže to urobiť. Funkciu putenv () je možné použiť na vytvorenie novej premennej prostredia s hodnotou. Na vytvorenie novej premennej prostredia sú názov premennej, znamienko rovná sa (=) a hodnota premennej uzavreté s citátom, ktorý sa má použiť ako hodnota argumentu funkcie putenv (). Ale hodnotu akejkoľvek zabudovanej premennej prostredia nemožno zmeniť pomocou funkcie putenv ().
Nasledujúci príklad ukazuje spôsob, ako vytvoriť novú premennú prostredia pomocou funkcie putenv () a načíta novovytvorenú premennú prostredia pomocou funkcie getenv (). Vytvorte súbor PHP s nasledujúcim skriptom.
“REMOTE_ADDR” je názov premennej vstavaného prostredia s hodnotou, ktorá je vytlačená na začiatku skriptu. Ďalej sa pre túto premennú nastaví nová hodnota a znova sa vytlačí. Vytvorí sa nová premenná prostredia s názvom „MY_ENV_VAR“ s hodnotou a vytlačí sa neskôr.
// Vytlačí aktuálnu hodnotu REMOTE_ADDRozvena “ Aktuálna vzdialená adresa je: „ . getenv ("REMOTE_ADDR"). „
";
// Pokúste sa zmeniť zabudovanú premennú REMOTE_ADDR
putenv ("REMOTE_ADDR = localserver");
// Vytlačí hodnotu REMOTE_ADDR po použití putenv ()
ozvena “ Vzdialená adresa po zmene je: „ . getenv ("REMOTE_ADDR"). „
";
// Definujte vlastnú premennú prostredia
putenv ("MY_ENV_VAR = TestSrver");
// Vytlačí premennú vlastného prostredia
ozvena “Hodnota MY_ENV_VAR je: „ . getenv ("MY_ENV_VAR");
?>
Výkon:
Po spustení skriptu zo servera sa objaví nasledujúci výstup. Ukazuje, že predvolená hodnota „REMOTE_ADDR“ je 127.0.0.1. Po zmene a opätovnom vytlačení hodnoty tejto premennej prostredia sa zobrazí jej predchádzajúca hodnota. To znamená, že hodnotu vstavaných premenných nie je možné zmeniť. Tu sa správne vytlačí novo vytvorená premenná prostredia.
Záver
Spôsoby čítania zabudovaných premenných prostredia a vytvárania nových premenných prostredia sú v tejto príručke zobrazené na rôznych príkladoch. Existuje superglobálna premenná s názvom $ _ENV, ktorá sa dá použiť aj na čítanie premennej prostredia v PHP. Koncept premenných prostredia v PHP bude objasnený po prečítaní tohto tutoriálu a kódéri PHP budú môcť tieto premenné používať vo svojich skriptoch.