session_set_save_handler
session_unregister
Fonctions Session
PHP Manual

# session_start

(PHP 4, PHP 5)

session_start — Initialise une session

### Description

bool session_start ( void )

session_start() crée une session (ou restaure celle trouvée sur le serveur, via l'identifiant de session passé dans une requête GET, POST ou par un cookie).

Si vous avez utilisé une session nommée, vous devez appeler session_name() avant d'appeler session_start().

session_start() va configurer un gestionnaire interne d'affichage, pour assurer la réécriture des URL, lorsque trans-sid est activé. Si vous utilisez ob_gzhandler ou ob_start(), l'ordre des gestionnaires d'affichage est important pour un affichage correct. Par exemple, l'utilisateur doit enregistrer ob_gzhandler avant que la session ne commence.

> Note: Cette fonction va émettre plusieurs entêtes HTTP, en fonction de la configuration. Voyez session_cache_limiter() pour personnaliser ces entêtes.

### Valeurs de retour

Retourne `TRUE` si la session a pu être créée avec succès, et `FALSE` sinon.

### Historique

Version | Description
--- | ---
5.3.0 | Si la session n'arrive pas à démarrer, pour une raison ou une autre, alors `FALSE` est retourné alors que `TRUE` était précédemment toujours retourné.
4.3.3 | L'appel à session_start() alors que la session a déjà débuté, retournera une erreur de niveau `E_NOTICE`. Le second appel à la fonction sera tout simplement ignoré.

### Exemples

Exemple #1 Un exemple de session : page1.php

`<?php
// page1.php
session_start();
echo 'Bienvenue à la page numéro 1';
$_SESSION['favcolor'] = 'green';
$_SESSION['animal'] = 'cat';
$_SESSION['time'] = time();
// Fonctionne si le cookie a été accepté
echo '<br /><a href="page2.php">page 2</a>';
// Ou bien, en indiquant explicitement l'identfiant de session
echo '<br /><a href="page2.php?' . SID . '">page 2</a>';
?>`

Après avoir vu la page page1.php avec un navigateur, la seconde page page2.php va magiquement afficher les données de session. Lisez la référence sur les sessions pour des informations sur la propagation des identifiants de session, et l'utilisation de la constante `SID`.

Exemple #2 Un exemple de session : page2.php

`<?php
// page2.php
session_start();
echo 'Bienvenue sur la page numéro 2<br />';
echo $_SESSION['favcolor']; // green
echo $_SESSION['animal']; // cat
echo date('Y m d H:i:s', $_SESSION['time']);
// Vous pourriez utiliser la constante SID ici, tout comme dans la page page1.php
echo '<br /><a href="page1.php">page 1</a>';
?>`

### Notes

> Note: Si vous utilisez des sessions basées sur les cookies, vous devez appeler session_start() avant d'afficher quoi que ce soit au navigateur.

> Note: L'utilisation de zlib.output_compression est recommandée, à la place de ob_gzhandler().

### Voir aussi

- $_SESSION
- La directive de configuration session.auto_start
- session_id() - Lit et/ou modifie l'identifiant courant de session

session_set_save_handler
session_unregister
Fonctions Session
PHP Manual