PHP Handbuch
Zurück |  | Weiter

# session_register

(PHP 4 , PHP 5)

session_register -- Registriert eine oder mehrere globale Variablen in der aktuellen Session

## Beschreibung

bool session_register ( mixed Name [, mixed ...] )

session_register() akzeptiert eine variable Anzahl von Argumenten, die jeweils entweder eine Zeichenkette sein können, die den Namen einer Variablen trägt, oder ein Array, das aus solchen Variablennamen oder anderen Arrays besteht. Für jeden Namen registriert session_register() die globale Variable mit diesem Namen in der aktuellen Session.

Achtung
Wenn Sie wollen, dass ihr Script unabhängig von der Einstellung von register_globals funktioniert, müssen Sie stattdessen das Array $_SESSION verwenden, weil $_SESSION-Einträge automatisch registriert werden. Wenn Sie in Ihrem Script session_register() verwenden, funktioniert es nicht in Umgebungen, in denen die PHP-Anweisung register_globals deaktiviert ist.

> register_globals: Wichtiger Hinweis: Seit PHP 4.2.0 ist die Standardeinsteillung für die Konfigurationsoption register_globals off. Die PHP Community ermutigt Alle, sich nicht auf diese Option zu verlassen und Alternativen wie superglobals zu verwenden.

Achtung
Diese Funktion registriert eine globale Variable. Wenn Sie eine Session-Variable innerhalb einer Funktion registrieren wollen, müssen Sie sicherstellen, dass Sie sie unter Verwendung des global-Schlüsselworts oder des $GLOBALS[]-Arrays global machen oder die nachstehend vermerkten speziellen Session-Arrays verwenden.

Achtung
Wenn Sie $_SESSION (oder $HTTP_SESSION_VARS) verwenden, sollten Sie nicht session_register(), session_is_registered() und session_unregister() verwenden.

Diese Funktion gibt `TRUE` zurück, wenn alle Variablen erfolgreich in der Session registriert wurden.

Wenn session_start() nicht vor dieser Funktion aufgerufen wurde, erfolgt ein impliziter Aufruf von session_start() ohne Parameter. $_SESSION ahmt dieses Verhalten nicht nach und benötigt den Aufruf von session_start() bevor es verwendet wird.

Sie können eine Session-Variable auch erzeugen, indem Sie das entsprechende Element des $_SESSION- oder (PHP <= 4.1.0) $HTTP_SESSION_VARS-Arrays setzen.

`<?php // Sie sollten session_register() nicht verwenden $barney = "A big purple dinosaur."; session_register("barney"); // Ab PHP 4.1.0 ist die Verwendung von $_SESSION vorzuziehen $_SESSION["zim"] = "An invader from another planet."; // Die alte Methode war, $HTTP_SESSION_VARS zu verwenden $HTTP_SESSION_VARS["spongebob"] = "He's got square pants."; ?>`

> Anmerkung: Gegenwärtig ist es nicht möglich, Ressourcen-Variablen in einer Session zu registrieren. Zum Beispiel können Sie nicht erwarten, dass die als Session-Variable gespeicherte Verbindungs-Kennung der zu einer Datenbank aufgebauten Verbindung bei der nächsten Wiederherstellung der Session noch gültig ist. PHP-Funktionen, die eine Ressource zurückgeben, können daran erkannt werden, dass sie einen Rückgabewert resource in ihrer Funktionsdefinition haben. Eine Liste der Funktionen, die Ressourcen zurückgeben befindet sich im Anhang Liste von PHP Ressourcen.

> Bei Verwendung von $_SESSION (oder $HTTP_SESSION_VARS bei PHP 4.0.6 oder niedriger) weisen Sie $_SESSION einen Wert zu, also $_SESSION['var'] = 'ABC';

Siehe auch: session_is_registered(), session_unregister() und $_SESSION.

Zurück | Zum Anfang | Weiter
session_regenerate_id | Nach oben | session_save_path