Fonctions Session
PHP Manual

session_start

(PHP 4, PHP 5)

session_startInitialise 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.

Pour utiliser une session nommée, vous devez appeler session_name() avant d'appeler session_start().

Lorsque session.use_trans_sid est activé, la function session_start() enregistrera un gestionnaire interne de sortie pour la réécriture d'URL.

Si un utilisateur utilise ob_gzhandler ou l'équivalent ob_start(), l'ordre d'appel des fonctions est important pour une sortie correcte. Par exemple, ob_gzhandler doit être enregistré avant de démarrer la session.

Valeurs de retour

Retourne TRUE si une session a pu être démarrée avec succès, et FALSE sinon.

Historique

Version Description
5.3.0 Si une session n'arrive pas à démarrer, alors FALSE est retourné. Précédemment TRUE était retourné.
4.3.3 A partir de PHP 4.3.3, appeler session_start() après qu'une session sois déjà démarrée émettra une erreur E_NOTICE. De plus la deuxième session démarrée sera tout simplement ignorée.Also, the

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: Pour utiliser des sessions basées sur les cookies, session_start() doit être appelée avant d'afficher quoi que ce soit dans le navigateur.

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

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

Voir aussi


Fonctions Session
PHP Manual