Razpoložljivost spremenljivke PHP
Mnogi začetniki programerjev PHP so zmedeni glede tega, kdaj je v programu PHP na voljo spremenljivka PHP. V bistvu je odvisno od tega kako in kje spremenljivka je razglašena ali ustvarjena. V prejšnjih vajah * ste izvedeli, da v večini primerov spremenljivko razglasite tako, da ji daste začetno vrednost.

$ dollar_amt = 10;

To poskrbi kako razglasiti spremenljivko, vendar kje razglašate, da je spremenljivka tudi pomembna. Spremenljivka je na voljo samo tam, kjer je bila ustvarjena. Če na primer ustvarimo spremenljivko znotraj funkcije, je ta spremenljivka na voljo samo znotraj te funkcije. Zunaj te funkcije ne obstaja. Funkcijo pomislite kot polje, ki vsebuje spremenljivko, in spremenljivke ne morete uporabljati zunaj tega polja. Oglejmo si primer. Spodnja funkcija ustvari spremenljivko $ dollar_amt in nato natisne stavek v spletni brskalnik.

funkcija print_cost ()
{$ dollar_amt = 10;
odmev "Stroški so $ dolar_amt dolarjev."; }

Tu ni težav, ker uporabljamo spremenljivko v stavku echo in je ta stavek del iste funkcije, ki je ustvarila spremenljivko. (Vse je v polju.) Če pa želimo spremenljivko v drugem stavku odmeva uporabiti kasneje v programu, ne bomo več delovali znotraj polja. Poskušali bomo uporabiti spremenljivko "zunaj" prvotne funkcije, ki jo je ustvarila.

funkcija print_cost ()
{$ dollar_amt = 10;
odmev "Stroški so $ dolar_amt dolarjev."; }
------
------
odmev "Morali boste poslati ček za $ dollar_amt USD.";

Ker spremenljivka ni na voljo za drugo izjavo odmeva, bo spletna stran izgledala tako.

Za dolarje boste morali poslati ček.

Spremenljivke lahko ustvarite kjer koli v svojem programu in ne samo znotraj funkcij. Kaj pa spremenljivka, deklarirana zunaj funkcije, na primer v glavnem telesu vašega programa? Velja enako pravilo razpoložljivosti. Spremenljivka je na voljo samo tam, kjer je bila ustvarjena (v tem primeru zunaj polja). Če poskusite spremenljivko uporabiti znotraj funkcije / polja, ne bo na voljo. Na primer, če v programu nastavite začetno vrednost spremenljivke $ cent_amt na 50, je ne morete uporabiti znotraj spodnje funkcije.

$ cent_amt = 50;


funkcija print_cost ()
{$ dollar_amt = 10;
odmev "Stroški znašajo $ dolar_amt dolarjev in $ cent_amt centov."; }

V spletnem brskalniku boste videli le naslednji stavek.

Stroški znašajo 10 dolarjev in centov.

Kaj pa tisti časi, ko morate v funkciji uporabiti spremenljivko "zunaj"? Enostaven način reševanja te težave je ta spremenljivka posredovati kot argument, ko pokličete funkcijo.

print_cost ("50");

-------
* Morda boste želeli prebrati nekaj prejšnjih vaj o spremenljivkah in funkcijah PHP.





Navodila Video: Ruby on Rails by Leila Hofer (Maj 2024).