Zend_Session

Introduction

L'équipe Auth de Zend Framework apprécie considérablement votre feedback et vos contributions sur notre liste émail : » fw-auth@lists.zend.com.

Dans les applications Web écrites en PHP, une session représente un raccordement logique entre le côté serveur, des données persistantes et un client particulier (par exemple, un navigateur Web). Zend_Session aide à contrôler et à préserver les données de session, un complément logique des données de type cookie, en cas de demande de page multiples par le même client. À la différence des données de cookie, les données de session ne sont pas stockées du côté client, et elles sont seulement partagées avec le client quand le code source du côté serveur rend volontairement disponible les données par l'intermédiaire d'une réponse à une demande du client. Dans le cadre de ce composant et de cette documentation, le terme "données de session" se rapportent aux données du côté serveur stockées dans » $_SESSION, contrôlées par Zend_Session, et individuellement manipulées par des objets Zend_Session_Namespace. Les espaces de noms de session permettent d'accéder aux données de session en utilisant les » espaces de noms classiques implémentés logiquement en tant que groupes nommés de tableaux associatifs, indexés par des chaînes (semblables aux tableaux habituels de PHP).

Les instances Zend_Session_Namespace sont des objets accesseurs pour les sous-parties nommées de $_SESSION. Le composant Zend_Session encapsule l'extension session de PHP existante avec une interface d'administration et de gestion, afin de fournir une API à Zend_Session_Namespace pour les espaces de noms de session persistants. Zend_Session_Namespace fournit une interface normalisée et orientée objet pour travailler en espaces de noms persistants à l'intérieur du mécanisme standard des sessions de PHP. Le support existe pour les espaces de noms anonymes et les espaces de nom de session authentifiés (par exemple, "login"). Zend_Auth, le composant d'authentification de Zend Framework emploie Zend_Session_Namespace pour stocker les informations liées aux utilisateurs authentifiés. Puisque Zend_Session emploie les fonctions normales de l'extension session de PHP, tous les options et réglages familiers de configuration s'appliquent (voir » http://www.php.net/session), avec en bonus la facilité d'accès par une interface orientée objet et un comportement par défaut fournissant les meilleures pratiques et une intégration sans problèmes dans Zend Framework. Ainsi, un id standard de session PHP, stocké soit dans un cookie côté client ou incorporé dans l'URL, maintient l'association entre un client et des données de session.

La fonction de gestion de session par défaut » session_set_save_handler ne maintient pas cette association dans un faisceau (NDT. : "cluster") de serveurs sous certaines conditions car les données de session sont sauvegardées seulement sur le serveur qui répond à la requête. Si une requête peut être réalisée par un serveur différent de celui où les données de session sont sauvegardées, alors le serveur appelé n'aura pas accès aux données de session (si elles ne sont pas disponibles dans un système de fichiers en réseau). Une liste additionnelle de gestionnaire de session sera fournie, dès que possible. Les membres de la communauté sont encouragés à suggérer et soumettre des gestionnaires de sauvegardes à la liste » fw-auth@lists.zend.com. Un gestionnaire de sauvegarde compatible Zend_Db a été signalé à la liste.


Zend_Session