1
0
mirror of https://github.com/php/doc-de.git synced 2026-04-23 23:18:24 +02:00
Files
archived-doc-de/reference/session/book.xml
T
2010-03-29 00:47:47 +00:00

112 lines
4.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: samesch Status: ready -->
<!-- Purpose: basic.session -->
<!-- Membership: core -->
<book xml:id="book.session" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Sessionbehandlung</title>
<titleabbrev>Sessions</titleabbrev>
<!-- {{{ preface -->
<preface xml:id="intro.session">
&reftitle.intro;
<para>
Die Unterstützung von Sessions in PHP bietet die Möglichkeit, bestimmte
Daten während einer Folge von Aufrufen Ihrer Website festzuhalten. Damit
können Sie persönlichere Anwendungen erstellen und Ihre Website
ansprechender gestalten.
</para>
<para>
Einem Besucher wird beim Aufruf Ihrer Website eine eindeutige ID, die
sogenannte Session-ID, zugeordnet. Diese wird entweder benutzerseitig in
einem Cookie abgelegt oder in der URL übermittelt.
</para>
<para>
Die Unterstützung von Sessions erlaubt Ihnen, eine beliebige Anzahl von
Variablen zu registrieren und diese über Anfragen hinweg zu erhalten. Wenn
ein Besucher Ihre Website aufruft, überprüft PHP automatisch (falls <link
linkend="ini.session.auto-start">session.auto_start</link> auf 1 gesetzt
ist) oder auf Anfrage (explizit durch <function>session_start</function>
oder implizit durch <function>session_register</function>), ob mit der
Anfrage schon eine bestimmte Session-ID gesendet wurde. Wenn dies der Fall
ist, wird die zuvor gespeicherte Umgebung wiederhergestellt.
</para>
<caution>
<para>
Falls Sie <link linkend="ini.session.auto-start">session.auto_start</link>
aktivieren, können Objekte nur in Ihre Sessions aufgenommen werden, indem
die Klassendefinition mittels <link
linkend="ini.auto-prepend-file">auto_prepend_file</link> geladen wird.
Andernfalls müssen Sie Ihr Objekt mittels <function>serialize</function>
serialisieren und danach mittels <function>unserialize</function>
deserialisieren.
</para>
</caution>
<para>
Alle registrierten Variablen werden serialisiert, nachdem die Anfrage
beendet ist. Registrierte Variablen, die nicht definiert sind, werden als
nicht definiert gekennzeichnet. Auch bei darauf folgenden Zugriffen werden
sie nicht vom Session-Modul definiert, außer der Benutzer definiert sie
später.
</para>
<warning>
<para>
Einige Datentypen können nicht serialisiert werden, um in Sessions
gespeichert zu werden. Dazu gehören <type>resource</type>-Variablen oder
Objekte mit Ringreferenzen (d.h. Objekte, die eine Referenz auf sich
selbst an andere Objekte übergeben).
</para>
</warning>
<note>
<para>
Bitte beachten Sie beim Arbeiten mit Sessions, dass der Datensatz einer
Session nicht angelegt wird, bevor eine Variable mit der Funktion
<function>session_register</function> registriert oder dem superglobalen
Array <varname>$_SESSION</varname> ein neuer Schlüssel hinzugefügt wird.
Das gilt auch dann, wenn eine Session mit der Funktion
<function>session_start</function> gestartet wurde.
</para>
</note>
<note>
<para>
Mit PHP 5.2.2 wurde die nicht dokumentierte Eigenschaft eingeführt,
Session-Dateien in "/tmp" zu speichern, selbst wenn <link
linkend="ini.open-basedir">open_basedir</link> aktiviert war und "/tmp"
nicht ausdrücklich zur Liste der zulässigen Pfade hinzugefügt wurde. Diese
Eigenschaft wurde in PHP 5.3.0 aus PHP entfernt.
</para>
</note>
</preface>
<!-- }}} -->
&reference.session.setup;
&reference.session.constants;
&reference.session.examples;
&reference.session.security;
&reference.session.reference;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->