PHP super globale sunt variabile încorporate care pot fi accesate din toate domeniile.

PHP Super Globals (PHP Super Globals)

În această lecție, vom explica toate super-globalurile în PHP cu exemple. Citiți mai departe pentru a afla.

PHP Super Globals: $GLOBALS

$GLOBALS superglobal este folosit pentru a accesa variabile globale din orice câmp (inclusiv funcții sau metode) în scriptul PHP. PHP stochează toate variabilele globale într-o matrice numită $GLOBALS[index]. Indexul conține numele variabilei. Următorul exemplu arată cum se utilizează variabila superglobală $GLOBALS:

$number1 = 50;
$number2 = 20;
function addition(): int
{
    return $GLOBALS[ 'number3' ] = $GLOBALS[ 'number2' ] + $GLOBALS[ 'number1' ];
}
echo addition();
// Çıktı: 70

PHP Super Globals: $_REQUEST

PHP $_REQUEST este PHP superglobal folosit pentru a colecta date din formularul HTML.

<!DOCTYPE html>
<html>
<body>
<form method="post" action="<?php
echo $_SERVER[ 'PHP_SELF' ]; ?>">
    Name: <input type="text" name="fname">
    <input type="submit">
</form>
<?php
if ($_SERVER[ 'REQUEST_METHOD' ] === 'POST') {
    // input elementinden gelen veriyi değişkene ata
    $name = htmlspecialchars($_REQUEST[ 'fname' ]);
    if (empty($name)) {
        echo 'Ad yok';
    } else {
        echo $name;
    }
}
?>
</body>
</html>

În exemplul de mai sus, am creat un formular care returnează date cu metoda post. I-am activat să returneze datele pe aceeași pagină cu $_SERVER['PHP_SELF']. Am verificat că solicitarea care vine cu $_SERVER['REQUEST_METHOD'] superglobal este o solicitare post. Apoi, am atribuit în siguranță datele din intrarea numită fname cu valoarea numelui variabilei $name cu $_REQUEST superglobal folosind funcția htmlspecialchars(). Am verificat dacă variabila $name este goală sau nu cu condiția PHP if. Dacă este gol, tipărim ieșirea „Fără nume”, altfel tipărim datele variabilei $name.

PHP Super Globals: $_POST

PHP $_POST este un PHP superglobal folosit pentru a colecta date din formularul HTML prin metoda POST.

<!DOCTYPE html>
<html>
<body>
<form method="post" action="<?php
echo $_SERVER[ 'PHP_SELF' ]; ?>">
    Name: <input type="text" name="fname">
    <input type="submit">
</form>
<?php
if ($_SERVER[ 'REQUEST_METHOD' ] === 'POST') {
    // input elementinden gelen veriyi değişkene ata
    $name = htmlspecialchars($_POST[ 'fname' ]);
    if (empty($name)) {
        echo 'Ad yok';
    } else {
        echo $name;
    }
}
?>
</body>
</html>

În exemplul de mai sus, am creat un formular care returnează date cu metoda post. I-am activat să returneze datele pe aceeași pagină cu $_SERVER['PHP_SELF']. Am verificat că solicitarea care vine cu $_SERVER['REQUEST_METHOD'] superglobal este o solicitare post. Apoi, am atribuit în siguranță datele din intrarea numită fname cu valoarea numelui variabilei $name cu $_POST superglobal folosind funcția htmlspecialchars(). Am verificat dacă variabila $name este goală sau nu cu condiția PHP if. Dacă este gol, tipărim ieșirea „Fără nume”, altfel tipărim datele variabilei $name.

PHP Super Global: $_GET

PHP $_GET este un PHP superglobal folosit pentru a colecta date din formularul HTML prin metoda GET. De asemenea, putem prelua datele trimise cu get în adresa URL cu $_GET superglobal.

Obținerea datelor din formular cu PHP $_GET Super Global

În exemplul de mai jos, am primit date din formularul HTML cu PHP $_GET superglobal.

<!DOCTYPE html>
<html>
<body>
<form method="post" action="<?php
echo $_SERVER[ 'PHP_SELF' ]; ?>">
    Name: <input type="text" name="fname">
    <input type="submit">
</form>
<?php
if ($_SERVER[ 'REQUEST_METHOD' ] === 'GET') {
    // input elementinden gelen veriyi değişkene ata
    $name = htmlspecialchars($_GET[ 'fname' ]);
    if (empty($name)) {
        echo 'Ad yok';
    } else {
        echo $name;
    }
}
?>
</body>
</html>

În exemplul de mai sus, am creat un formular care returnează date cu metoda post. I-am activat să returneze datele pe aceeași pagină cu $_SERVER['PHP_SELF']. Am verificat că solicitarea care vine cu $_SERVER['REQUEST_METHOD'] superglobal este o solicitare post. Apoi, am atribuit în siguranță datele din intrarea numită fname cu valoarea numelui variabilei $name cu $_POST superglobal folosind funcția htmlspecialchars(). Am verificat dacă variabila $name este goală sau nu cu condiția PHP if. Dacă este gol, tipărim ieșirea „Fără nume”, altfel tipărim datele variabilei $name.

Obținerea datelor de la URL cu PHP $_GET Super Global

În exemplul de mai jos, am preluat date de la adresa URL cu PHP $_GET superglobal.

<!DOCTYPE html>
<html>
<body>
<a href="<?php
echo $_SERVER[ 'PHP_SELF' ] ?>?name=Onur%20Özden&website=www.onurozden.com.tr">Buraya Tıkla</a>
<?php
echo "Ben " . $_GET[ 'name' ] . " şu sitede PHP öğreniyorum: " . $_GET[ 'website' ];
?>
</body>
</html>

În exemplul de mai sus, în loc să introducem numele fișierului, am primit numele fișierului folosind superglobalul $_SERVER. Acum să explicăm ce am făcut în acest exemplu. Am creat un document HTML și am dat parametrul nume fișierului get.php. Am dat parametrului nume valoarea „Onur Özden” și am separat parametrii cu semnul „&”. Ulterior, am creat parametrul site-ului și i-am dat valoarea „onurozden.com.tr”. Am tipărit textul „Click Here” pe eticheta A. Venind la partea PHP, am tipărit „My name” cu echo și am folosit $_GET superglobal cu operatorul de concatenare pentru a prelua și tipări datele parametrului numit name. Din nou, folosind operatorul de îmbinare, am tipărit „și site-ul meu”. Am folosit din nou operatorul de concatenare și am obținut datele parametrului site-ului web cu $GET superglobal și le-am imprimat.

PHP Super Globals: $_SERVER

$_SERVER superglobal este o variabilă PHP superglobală care conține informații despre anteturi, căi și locații de script. În exemplul de mai jos, arătăm cum să utilizați superglobalul $_SERVER.

echo $_SERVER['PHP_SELF'];
echo '</br>';
echo $_SERVER['SERVER_NAME'];
echo '</br>';
echo $_SERVER['HTTP_HOST'];
echo '</br>';
echo $_SERVER['HTTP_REFERER'];
echo '</br>';
echo $_SERVER['HTTP_USER_AGENT'];
echo '</br>';
echo $_SERVER['SCRIPT_NAME'];

În exemplul de mai sus, am definit variabile numite $număr1 și $număr2 și le-am dat valori de tip număr. Apoi, am definit o funcție numită addition care returnează o valoare de tipul de date int. Am spus că în superglobalul $GLOBALS, numele variabilelor sunt păstrate ca indici. Am creat variabila prin crearea unui index numit number3. Am atribuit acestei variabile suma variabilei $number2 și a variabilei $number1, pe care le-am accesat din zona globală cu $GLOBALS superglobal. Apoi am returnat această valoare cu return și am terminat funcția. Ca ultim pas, scoatem valoarea din funcția noastră addition() cu echo.

Toate utilizările PHP $_SERVER Super Global

$_SERVER['PHP_SELF']Returnează numele de fișier al scriptului executat.
$_SERVER['GATEWAY_INTERFACE']Returnează versiunea CGI (Common Gateway Interface) utilizată de server.
$_SERVER['SERVER_ADDR']Returnează adresa IP a serverului gazdă.
$_SERVER[„SERVER_NAME”]Returnează numele serverului principal.
$_SERVER[„SERVER_SOFTWARE”]Returnează textul de identificare a serverului (cum ar fi Apache/2.2.24).
$_SERVER[„SERVER_PROTOCOL”]Returnează numele și versiunea protocolului de informații (cum ar fi HTTP/1.1).
$_SERVER['REQUEST_METHOD']Returnează metoda de solicitare folosită pentru a accesa pagina (cum ar fi POST, GET).
$_SERVER['REQUEST_TIME']Returnează marca temporală a începutului solicitării (de exemplu, 1377687496).
$_SERVER['QUERY_STRING']Dacă pagina este accesată printr-un șir de interogare, acesta returnează șirul de interogare.
$_SERVER['HTTP_ACCEPT']Returnează antetul de acceptare din cererea curentă.
$_SERVER['HTTP_ACCEPT_CHARSET']Returnează antetul Accept_Charset din cererea curentă (cum ar fi utf-8, ISO-8859-1).
$_SERVER['HTTP_HOST']Returnează antetul gazdei din cererea curentă.
$_SERVER['HTTP_REFERER']Returnează adresa URL completă a paginii curente (nu este de încredere, deoarece nu toți agenții utilizatori o acceptă).
$_SERVER['HTTPS']Verifică dacă scriptul este interogat printr-un protocol HTTP securizat (HTTPS).
$_SERVER['REMOTE_ADDR']Returnează adresa IP de la care utilizatorul vizualizează pagina curentă.
$_SERVER['REMOTE_HOST']Returnează numele de gazdă de unde utilizatorul vizualizează pagina curentă.
$_SERVER['REMOTE_PORT']Returnează portul folosit pe computerul utilizatorului pentru a comunica cu serverul web.
$_SERVER['SCRIPT_FILENAME']Returnează calea absolută a scriptului care se execută în prezent.
$_SERVER[„SERVER_ADMIN”]Returnează valoarea dată directivei SERVER_ADMIN în fișierul de configurare a serverului web (dacă scriptul dumneavoastră rulează pe o gazdă virtuală, aceasta va fi valoarea definită pentru acea gazdă virtuală) (cum ar fi some@onurozden.com.tr).
$_SERVER['SERVER_PORT']Returnează portul de pe computerul server utilizat de serverul web pentru comunicare (cum ar fi 80).
$_SERVER['SERVER_SIGNATURE']Returnează versiunea serverului și numele gazdei virtuale adăugate la pagina generată de server.
$_SERVER['PATH_TRANSLATED']Returnează calea bazată pe sistemul de fișiere către scriptul curent.
$_SERVER['SCRIPT_FILENAME']Returnează calea către scriptul curent.
$_SERVER['SCRIPT_URI']Returnează URI-ul paginii curente.