(PHP 4, PHP 5)
session_start — Initialisiert eine Session
session_start() erzeugt eine Session oder nimmt die aktuelle wieder auf, die auf der Session-Kennung basiert, die mit einer GET- oder POST-Anfrage oder mit einem Cookie übermittelt wurde.
Um eine benannte Session zu verwenden, rufen Sie session_name() auf, bevor Sie session_start() aufrufen.
Wenn session.use_trans_sid aktiviert ist, registriert die Funktion session_start() eine interne Ausgaberoutine für das Umschreiben von URLs.
Verwendet ein Benutzer ob_gzhandler oder ähnliches mit ob_start(), dann ist die Reihenfolge der Funktionen wichtig für eine korrekte Ausgabe. Zum Beispiel muss ob_gzhandler vor Beginn der Session registriert werden.
Falls die Session erfolgreich gestartet wurde, gibt diese Funktion TRUE zurück, andernfalls FALSE.
Version | Beschreibung |
---|---|
5.3.0 | Falls der Start der Session fehlschlägt, wird FALSE zurückgegeben. Vorher wurde TRUE zurückgegeben. |
4.3.3 | Ab PHP 4.3.3 resultiert der Aufruf von session_start() nachdem die Session vorher gestartet wurde in einem Fehler der Stufe E_NOTICE. Der zweite Start der Session wird in diesem Fall einfach ignoriert. |
Beispiel #1 Ein Session-Beispiel: seite1.php
<?php
// seite1.php
session_start();
echo 'Willkommen auf Seite #1';
$_SESSION['farbe'] = 'grün';
$_SESSION['tier'] = 'Spinne';
$_SESSION['zeit'] = time();
// Funktioniert, falls das Session-Cookie akzeptiert wurde
echo '<br /><a href="seite2.php">Seite 2</a>';
// Oder die Session-ID mit übergeben, für den Fall, dass sie benötigt wird
echo '<br /><a href="seite2.php?' . SID . '">Seite 2</a>';
?>
Nach dem Aufruf von seite1.php enthält automatisch auch die zweite Seite, seite2.php, die Session-Daten. Lesen Sie Session Funktionen, um weitere Informationen über die Übermittlung der Session-ID zu erhalten. Dort wird zum Beispiel erklärt, worum es sich bei der Konstanten SID handelt.
Beispiel #2 Ein Session-Beispiel: seite2.php
<?php
// seite2.php
session_start();
echo 'Willkommen auf Seite #2<br />';
echo $_SESSION['farbe']; // grün
echo $_SESSION['tier']; // Spinne
echo date('d.m.Y H:i:s', $_SESSION['zeit']);
// Sie können auch hier, genauso wie bei seite1.php, SID verwenden
echo '<br /><a href="seite1.php">Seite 1</a>';
?>
Hinweis:
Um Cookie-basierte Sessions zu verwenden muss session_start() aufgerufen werden, bevor irgend etwas an den Browser geschickt wird.
Hinweis:
Die Verwendung von zlib.output_compression ist ob_gzhandler() vorzuziehen.
Hinweis:
In Abhängigkeit von der Konfiguration sendet diese Funktion verschiedene HTTP-Header. Siehe session_cache_limiter() um diese Header anzupassen,