Hauptmenü

Untermenü

PHP - Grundlagen - Arrays - Globale Arrays

1. Grundlagen

Neben den Arrays, die wir selber definieren können, stellt uns PHP noch ein paar globale (oft auch als superglobale bezeichnete) Arrays zur Verfügung, auf die wir jederzeit zugreifen können. Ich werde euch hier nur ein paar von denen vorstellen und auch nicht in allen Details.

2. $_SERVER

Liefert uns "systemnahe" Auskünfte über den Server und den Client des Betrachters sowie einige zusätzliche Funktionalitäten. Allerdings kann es Einschränkungen durch die Konfiguration des Webservers geben. Alle folgenden Varianten werden so geschrieben: $_SERVER[variante].

Serverausgaben

Clientausgaben

WARNUNG! Diese Angaben müssen nicht den Tatsachen entsprechen. Sitzen zum Beispiel 10 Personen hinter derselben Firewall, so wird für alle dieselbe IP angegeben.

Beispiele


<?php
  $_SERVER['SERVER_ADDR']
  $_SERVER['PHP_SELF']
  $_SERVER['REMOTE_ADDR']
?>

3. $_POST

Enthält alle Inhalte eines Formulars, das mit method="post" versendet wurde. Der Index ergibt sich dann (bis auf zwei Ausnahmen) aus dem Wert des jeweiligen name-Attributs.

4. $_GET

Enthält alle Inhalte eines Formulars, das mit method="get" versendet wurde, oder listet die Parameter einer URL auf, also zum Beispiel;


<?php
  // blubb.php
  <a href="bla.php?id=1&blubb=blubber">
  
  // bla.php
  echo $_GET['id'];    // Gibt 1 aus
  echo $_GET['blubb']; // Gibt blubber aus
?>

5. $_SESSION

Speichert alle Inhalte, die in eine Session geschrieben werden.

6. $_COOKIE

Speichert alle Inhalte, die in ein Cookie geschrieben werden.

7. Testausgabe

Sollte es beim Einsatz von Arrays zu Problemen oder Fehlern kommen, hilft eine einfache Ausgabe sehr schnell weiter, print_r(...).


<?php
  print_r ($arrayname);
  print_r ($_SERVER);
  print_r ($_POST);
  print_r ($_GET);
  print_r ($_SESSION);
?>

Damit wird der komplette Inhalt inklusive aller Indizes ausgegeben. Ein wirklich sehr praktischer Befehl, der das Programmieren wirklich erleichtert.

zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt