PHP-s seansimuutujasse salvestatud väärtusele juurdepääsu saamiseks peame mõistma seansside kontseptsiooni ja seda, kuidas neid PHP-s hallatakse. Seansid on viis andmete salvestamiseks, millele pääseb juurde mitmel lehel või sama kasutaja päringutega. Neid kasutatakse tavaliselt kasutajaspetsiifilise teabe (nt sisselogimismandaatide või ostukorvi üksuste) säilitamiseks.
PHP-s hallatakse seansse sisseehitatud seansifunktsioonide abil. Enne seansimuutujale juurdepääsu avamist peame seansi käivitama funktsiooni session_start() abil. See funktsioon initsialiseerib või jätkab seanssi ning teeb seansi muutujad kasutamiseks kättesaadavaks.
Kui seanss on alanud, pääseme seansimuutujasse salvestatud väärtusele juurde, kasutades superglobaalset massiivi $_SESSION. Seansi muutujad salvestatakse sellesse massiivi võtme-väärtuse paaridena, kus võti tähistab muutuja nime ja väärtus selle väärtust.
Oletame näiteks, et meil on seansimuutuja nimega "username", mis salvestab hetkel sisse logitud kasutaja kasutajanime. Selle muutuja väärtusele juurdepääsuks saame kasutada järgmist koodi:
php session_start(); echo $_SESSION['username'];
Selles koodis alustame seanssi esmalt kasutades session_start(). Seejärel pääseme juurde seansimuutuja "kasutajanimi" väärtusele, viidates sellele kui $_SESSION['kasutajanimi']. Lõpuks kasutame kajalauset, et kuvada väärtus veebilehel.
Oluline on märkida, et seansi muutujad on saadaval ainult pärast seansi käivitamist, kasutades sessiooni_start(). Kui proovime enne seansi alustamist seansimuutujale juurde pääseda, põhjustab see määratlemata muutuja tõrke.
Lisaks on vigade vältimiseks hea tava enne sellele juurde pääsemist kontrollida, kas seansimuutuja on olemas. Seda saab teha funktsiooni isset() abil. Näiteks:
php session_start(); if (isset($_SESSION['username'])) { echo $_SESSION['username']; } else { echo "Username not set."; }
Selles koodis kasutame funktsiooni isset(), et kontrollida, kas seansimuutuja "kasutajanimi" on olemas. Kui see nii on, kuvame selle väärtuse. Vastasel juhul kuvame teate, mis näitab, et muutuja pole määratud.
PHP-s seansimuutujasse salvestatud väärtusele juurdepääsu saamiseks peame seansi alustama käsuga session_start() ja seejärel kasutama soovitud muutujale juurdepääsuks superglobaalset massiivi $_SESSION. Vigade vältimiseks on oluline ka enne sellele juurde pääsemist kontrollida, kas muutuja on olemas.
Muud hiljutised küsimused ja vastused selle kohta EITC/WD/PMSF PHP ja MySQL põhialused:
- Milline on soovitatav lähenemine klassi omadustele juurdepääsuks ja nende muutmiseks?
- Kuidas saame klassis eraomandi väärtust värskendada?
- Mis kasu on getterite ja setterite kasutamisest klassis?
- Kuidas saaksime klassis juurde pääseda eraomandi väärtusele?
- Mis on klassis vara privaatseks muutmise eesmärk?
- Mis on PHP klassides konstruktorfunktsioon ja mis on selle eesmärk?
- Mis on meetodid PHP klassides ja kuidas me saame nende nähtavust määratleda?
- Mis on atribuudid PHP klassides ja kuidas me saame nende nähtavust määratleda?
- Kuidas luua PHP klassist objekti?
- Mis on PHP klass ja mis eesmärki see teenib?
Vaadake rohkem küsimusi ja vastuseid EITC/WD/PMSF PHP ja MySQL Fundamentals