Om toegang te verkry tot die waarde wat in 'n sessieveranderlike in PHP gestoor is, moet ons die konsep van sessies verstaan en hoe dit in PHP bestuur word. Sessies is 'n manier om data te stoor wat deur dieselfde gebruiker oor verskeie bladsye of versoeke verkry kan word. Hulle word algemeen gebruik om gebruikerspesifieke inligting te onderhou, soos aanmeldbewyse of inkopiemandjie-items.
In PHP word sessies bestuur deur die ingeboude sessiefunksies te gebruik. Voordat ons toegang tot 'n sessieveranderlike verkry, moet ons die sessie begin deur die session_start() funksie te gebruik. Hierdie funksie inisialiseer of hervat 'n sessie, en maak die sessieveranderlikes beskikbaar vir gebruik.
Sodra die sessie begin is, kan ons toegang verkry tot die waarde wat in 'n sessieveranderlike gestoor is deur die $_SESSION superglobal skikking te gebruik. Die sessieveranderlikes word as sleutel-waarde-pare in hierdie skikking gestoor, waar die sleutel die naam van die veranderlike verteenwoordig en die waarde die waarde daarvan verteenwoordig.
Byvoorbeeld, kom ons sê ons het 'n sessieveranderlike met die naam "gebruikersnaam" wat die gebruikernaam van die tans aangemelde gebruiker stoor. Om toegang tot die waarde van hierdie veranderlike te verkry, kan ons die volgende kode gebruik:
php session_start(); echo $_SESSION['username'];
In hierdie kode begin ons eers die sessie met session_start(). Dan kry ons toegang tot die waarde van die "gebruikersnaam"-sessieveranderlike deur dit as $_SESSION['gebruikersnaam'] te verwys. Ten slotte gebruik ons die eggo-stelling om die waarde op die webblad te vertoon.
Dit is belangrik om daarop te let dat sessieveranderlikes slegs beskikbaar is nadat die sessie begin is met session_start(). As ons probeer om toegang te verkry tot 'n sessie veranderlike voor die aanvang van die sessie, sal dit lei tot 'n ongedefinieerde veranderlike fout.
Boonop is dit 'n goeie praktyk om te kyk of 'n sessieveranderlike bestaan voordat u toegang daartoe kry, om foute te vermy. Dit kan gedoen word met behulp van die isset() funksie. Byvoorbeeld:
php session_start(); if (isset($_SESSION['username'])) { echo $_SESSION['username']; } else { echo "Username not set."; }
In hierdie kode gebruik ons die isset() funksie om te kyk of die "gebruikersnaam" sessie veranderlike bestaan. As dit wel gebeur, vertoon ons die waarde daarvan. Andersins vertoon ons 'n boodskap wat aandui dat die veranderlike nie gestel is nie.
Om toegang te verkry tot die waarde wat in 'n sessieveranderlike in PHP gestoor is, moet ons die sessie begin deur session_start() te gebruik en dan die $_SESSION superglobal skikking te gebruik om toegang tot die verlangde veranderlike te verkry. Dit is ook belangrik om seker te maak of die veranderlike bestaan voordat u toegang daartoe kry om foute te vermy.
Ander onlangse vrae en antwoorde t.o.v EITC/WD/PMSF PHP en MySQL Fundamentals:
- Wat is die aanbevole benadering vir toegang tot en wysiging van eiendomme in 'n klas?
- Hoe kan ons die waarde van 'n privaat eiendom in 'n klas opdateer?
- Wat is die voordeel daarvan om getters en setters in 'n klas te gebruik?
- Hoe kan ons toegang tot die waarde van 'n privaat eiendom in 'n klas kry?
- Wat is die doel om eiendomme privaat in 'n klas te maak?
- Wat is 'n konstruktorfunksie in PHP-klasse en wat is die doel daarvan?
- Wat is metodes in PHP-klasse en hoe kan ons hul sigbaarheid definieer?
- Wat is eiendomme in PHP-klasse en hoe kan ons hul sigbaarheid definieer?
- Hoe skep ons 'n voorwerp uit 'n klas in PHP?
- Wat is 'n klas in PHP en watter doel dien dit?
Sien meer vrae en antwoorde in EITC/WD/PMSF PHP en MySQL Fundamentals