PHP-Superglobals sind integrierte Variablen, auf die von allen Bereichen aus zugegriffen werden kann.
PHP Super Globals (PHP Super Globals)
In dieser Lektion erklären wir alle Super-Globals in PHP anhand von Beispielen. Lesen Sie weiter, um es herauszufinden.
PHP Super Globals: $GLOBALS
Der Superglobal $GLOBALS wird verwendet, um von jedem Feld (einschließlich Funktionen oder Methoden) im PHP-Skript auf globale Variablen zuzugreifen. PHP speichert alle globalen Variablen in einem Array namens $GLOBALS[index]. Der Index enthält den Namen der Variablen. Das folgende Beispiel zeigt, wie die superglobale Variable $GLOBALS verwendet wird:
$number1 = 50;
$number2 = 20;
function addition(): int
{
return $GLOBALS[ 'number3' ] = $GLOBALS[ 'number2' ] + $GLOBALS[ 'number1' ];
}
echo addition();
// Çıktı: 70PHP Super Globals: $_REQUEST
PHP $_REQUEST ist PHP Superglobal, das zum Sammeln von Daten aus HTML-Formularen verwendet wird.
<!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>Im obigen Beispiel haben wir ein Formular erstellt, das Daten mit der Post-Methode zurückgibt. Wir haben es aktiviert, die Daten auf derselben Seite mit $_SERVER['PHP_SELF'] zurückzugeben. Wir haben überprüft, dass es sich bei der mit dem Superglobal $_SERVER['REQUEST_METHOD'] gelieferten Anfrage um eine Post-Anfrage handelt. Dann haben wir die Daten aus der Eingabe namens fname mit dem Namenswert mithilfe der Funktion htmlspecialchars() sicher der Variablen $name mit dem Superglobal $_REQUEST zugewiesen. Wir haben mit der PHP-If-Bedingung überprüft, ob die Variable $name leer ist oder nicht. Wenn es leer ist, geben wir die Ausgabe „No name“ aus, andernfalls geben wir die Daten der Variablen $name aus.
PHP Super Globals: $_POST
PHP $_POST ist ein PHP-Superglobal, das zum Sammeln von Daten aus dem HTML-Formular über die POST-Methode verwendet wird.
<!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>Im obigen Beispiel haben wir ein Formular erstellt, das Daten mit der Post-Methode zurückgibt. Wir haben es aktiviert, die Daten auf derselben Seite mit $_SERVER['PHP_SELF'] zurückzugeben. Wir haben überprüft, dass es sich bei der mit dem Superglobal $_SERVER['REQUEST_METHOD'] gelieferten Anfrage um eine Post-Anfrage handelt. Anschließend haben wir die Daten aus der Eingabe namens fname mit dem Namenswert mithilfe der Funktion htmlspecialchars() sicher der Variablen $name mit dem Superglobal $_POST zugewiesen. Wir haben mit der PHP-If-Bedingung überprüft, ob die Variable $name leer ist oder nicht. Wenn es leer ist, geben wir die Ausgabe „No name“ aus, andernfalls geben wir die Daten der Variablen $name aus.
PHP Super Globals: $_GET
PHP $_GET ist ein PHP-Superglobal, das zum Sammeln von Daten aus dem HTML-Formular über die GET-Methode verwendet wird. Wir können die mit get gesendeten Daten auch in der URL mit dem Superglobal $_GET abrufen.
Daten aus einem Formular mit PHP abrufen $_GET Super Global
Im folgenden Beispiel haben wir Daten aus dem HTML-Formular mit dem PHP-Superglobal $_GET empfangen.
<!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>Im obigen Beispiel haben wir ein Formular erstellt, das Daten mit der Post-Methode zurückgibt. Wir haben es aktiviert, die Daten auf derselben Seite mit $_SERVER['PHP_SELF'] zurückzugeben. Wir haben überprüft, dass es sich bei der mit dem Superglobal $_SERVER['REQUEST_METHOD'] gelieferten Anfrage um eine Post-Anfrage handelt. Anschließend haben wir die Daten aus der Eingabe namens fname mit dem Namenswert mithilfe der Funktion htmlspecialchars() sicher der Variablen $name mit dem Superglobal $_POST zugewiesen. Wir haben mit der PHP-If-Bedingung überprüft, ob die Variable $name leer ist oder nicht. Wenn es leer ist, geben wir die Ausgabe „No name“ aus, andernfalls geben wir die Daten der Variablen $name aus.
Daten von einer URL mit PHP $_GET Super Global abrufen
Im folgenden Beispiel haben wir Daten von der URL mit dem PHP-Superglobal $_GET abgerufen.
<!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>Im obigen Beispiel haben wir, anstatt Ihren Dateinamen einzugeben, den Dateinamen mithilfe des Superglobals $_SERVER erhalten. Lassen Sie uns nun erklären, was wir in diesem Beispiel getan haben. Wir haben ein HTML-Dokument erstellt und der Datei get.php den Namensparameter gegeben. Wir haben dem Namensparameter den Wert „Onur Özden“ gegeben und die Parameter durch das „&“-Zeichen getrennt. Anschließend haben wir den Website-Parameter erstellt und ihm den Wert „onurozden.com.tr“ gegeben. Wir haben den Text „Hier klicken“ auf Etikett A gedruckt. Als wir zum PHP-Teil kamen, haben wir „Mein Name“ mit echo gedruckt und den Superglobal $_GET mit dem Verkettungsoperator verwendet, um die Daten des Parameters namens „name“ abzurufen und zu drucken. Auch hier haben wir mit dem Merge-Operator „und meine Website“ gedruckt. Wir haben erneut den Verkettungsoperator verwendet und die Daten des Website-Parameters mit dem Superglobal $GET abgerufen und ausgedruckt.
PHP Super Globals: $_SERVER
Die superglobale Variable $_SERVER ist eine superglobale PHP-Variable, die Informationen zu Headern, Pfaden und Skriptspeicherorten enthält. Im folgenden Beispiel zeigen wir, wie man den Superglobal $_SERVER verwendet.
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'];Im obigen Beispiel haben wir Variablen mit den Namen $Nummer1 und $Nummer2 definiert und ihnen Werte vom Typ Nummer zugewiesen. Dann haben wir eine Funktion namens Addition definiert, die einen Wert vom Datentyp int zurückgibt. Wir sagten, dass im Superglobal $GLOBALS die Namen der Variablen als Indizes gespeichert werden. Wir haben die Variable erstellt, indem wir einen Index namens Nummer3 erstellt haben. Wir haben dieser Variablen die Summe der Variablen $number2 und der Variablen $number1 zugewiesen, auf die wir aus dem globalen Bereich mit dem Superglobal $GLOBALS zugegriffen haben. Diesen Wert haben wir dann mit return zurückgegeben und die Funktion beendet. Als letzten Schritt geben wir den Wert in unserer Funktion Addition() mit Echo aus.
Alle Verwendungen von PHP $_SERVER Super Global
| $_SERVER['PHP_SELF'] | Gibt den Dateinamen des ausgeführten Skripts zurück. |
| $_SERVER['GATEWAY_INTERFACE'] | Gibt die vom Server verwendete CGI-Version (Common Gateway Interface) zurück. |
| $_SERVER['SERVER_ADDR'] | Gibt die IP-Adresse des Hostservers zurück. |
| $_SERVER['SERVER_NAME'] | Gibt den Namen des Hauptservers zurück. |
| $_SERVER['SERVER_SOFTWARE'] | Gibt den Serveridentifikationstext zurück (z. B. Apache/2.2.24). |
| $_SERVER['SERVER_PROTOCOL'] | Gibt den Namen und die Version des Informationsprotokolls zurück (z. B. HTTP/1.1). |
| $_SERVER['REQUEST_METHOD'] | Gibt die Anforderungsmethode zurück, die für den Zugriff auf die Seite verwendet wird (z. B. POST, GET). |
| $_SERVER['REQUEST_TIME'] | Gibt den Zeitstempel des Beginns der Anfrage zurück (z. B. 1377687496). |
| $_SERVER['QUERY_STRING'] | Wenn die Seite über einen Abfragestring aufgerufen wird, wird der Abfragestring zurückgegeben. |
| $_SERVER['HTTP_ACCEPT'] | Gibt den Accept-Header der aktuellen Anfrage zurück. |
| $_SERVER['HTTP_ACCEPT_CHARSET'] | Gibt den Accept_Charset-Header der aktuellen Anfrage zurück (z. B. utf-8, ISO-8859-1). |
| $_SERVER['HTTP_HOST'] | Gibt den Host-Header der aktuellen Anfrage zurück. |
| $_SERVER['HTTP_REFERER'] | Gibt die vollständige URL der aktuellen Seite zurück (nicht zuverlässig, da nicht alle Benutzeragenten dies unterstützen). |
| $_SERVER['HTTPS'] | Prüft, ob das Skript über ein sicheres HTTP-Protokoll (HTTPS) abgefragt wird. |
| $_SERVER['REMOTE_ADDR'] | Gibt die IP-Adresse zurück, von der aus der Benutzer die aktuelle Seite anzeigt. |
| $_SERVER['REMOTE_HOST'] | Gibt den Hostnamen zurück, von dem aus der Benutzer die aktuelle Seite anzeigt. |
| $_SERVER['REMOTE_PORT'] | Gibt den Port zurück, der auf dem Computer des Benutzers für die Kommunikation mit dem Webserver verwendet wird. |
| $_SERVER['SCRIPT_FILENAME'] | Gibt den absoluten Pfad des aktuell ausgeführten Skripts zurück. |
| $_SERVER['SERVER_ADMIN'] | Gibt den Wert zurück, der der SERVER_ADMIN-Direktive in der Webserver-Konfigurationsdatei gegeben wurde (wenn Ihr Skript auf einem virtuellen Host ausgeführt wird, ist es der für diesen virtuellen Host definierte Wert) (z. B. some@onurozden.com.tr). |
| $_SERVER['SERVER_PORT'] | Gibt den Port auf dem Servercomputer zurück, der vom Webserver für die Kommunikation verwendet wird (z. B. 80). |
| $_SERVER['SERVER_SIGNATURE'] | Gibt die Serverversion und den virtuellen Hostnamen zurück, die der vom Server generierten Seite hinzugefügt wurden. |
| $_SERVER['PATH_TRANSLATED'] | Gibt den dateisystembasierten Pfad zum aktuellen Skript zurück. |
| $_SERVER['SCRIPT_FILENAME'] | Gibt den Pfad zum aktuellen Skript zurück. |
| $_SERVER['SCRIPT_URI'] | Gibt den URI der aktuellen Seite zurück. |



