Maison  >  Article  >  développement back-end  >  Séances en PHP

Séances en PHP

PHPz
PHPzoriginal
2024-08-29 12:42:281095parcourir

Les sessions sont utilisées dans les applications Web. L'utilisation de sessions en PHP consiste à rendre les données disponibles sur différentes pages d'un site Web. Les données ou informations telles que le nom, l'adresse, etc. sont transportées d'une page à une autre session utilisateur. Ces informations de session sont utilisées à des fins d'authentification. Tout comme les cookies sont stockés sur le navigateur des clients, les données de session sont stockées sur le serveur dans un répertoire temporaire.

PUBLICITÉ Cours populaire dans cette catégorie DEVELOPPEUR PHP - Spécialisation | Série de 8 cours | 3 tests simulés

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Pour commencer une session, nous utilisons la fonction session_start(). Et lorsque la session démarre, elle dure par défaut 24 minutes, soit 1440 en secondes. Une session est identifiée par des identifiants de session ou SID, qui est un numéro unique permettant d'identifier chaque utilisateur.

Comment créer des sessions en PHP ?

session_start() est la fonction utilisée pour démarrer une session. Si une session existe déjà, elle utilisera la même session ; sinon, cela créera une nouvelle session. Cette fonction est toujours appelée au début de chaque page. Une fois la fonction appelée, nous pouvons commencer à stocker les valeurs dans les variables de session, mais pas avant. PHP stocke les informations de l'utilisateur dans une super variable globale $_SESSION.

Pour connaître le chemin du répertoire où sont stockées les sessions, nous avons une directive appelée session_save_path dans le fichier php.ini pour stocker le chemin. De plus, session_id imprime l'identifiant associé à la session en cours. Il s'agit d'un numéro unique généré aléatoirement.

Regardons le programme ci-dessous.

Dans ce programme, lorsque vous imprimez cette variable de session à l'aide de print_r($_SESSION), toutes les données de session définies sont imprimées. La sortie se présente sous la forme d'un tableau associatif de paires clé-valeur.

Dans cet exemple, nous démarrons d'abord la session en utilisant la fonction session_start(), initialisons les variables et l'attribuons aux variables de session en utilisant _SESSION['name'] = $name, imprimons le tableau super global. Nous imprimons également la valeur unique de l'identifiant de session avec la fonction session_id().

Exemple

Code :

<?php
// example to start session
//beginning a session
// no arguments are passed to this function
session_start();
//initializing variables
$name = 'Neha';$age = 28;
//storing values in session
$_SESSION['name'] = $name;
$_SESSION['age'] = $age;
// printing session valuesprint_r($_SESSION);
//using the session id
echo '<br > The session_id is ';
echo session_id();
?>

Sortie :

Séances en PHP

Comment supprimer des sessions en PHP ?

Voici un exemple de suppression de session :

La fonction Session_destroy() est utilisée pour détruire une session. Cette fonction détruit la session complète. Pour supprimer une seule variable de session, nous pouvons utiliser la fonction unset().

Dans cet exemple, nous imprimons d'abord les données de la session pour savoir ce que contient la session ; ensuite, nous détruisons les variables de session déjà définies à l'aide de la fonction unset(). Ici, nous détruisons à la fois les variables de session définies comme le nom et l'âge. Et après la destruction, nous imprimons à nouveau la session et voyons qu'elle renvoie un tableau vide, ce qui signifie que les variables n'ont pas été définies et que la session n'existe plus.

Code :

<?php
//example to unset session variables
//starting a session
session_start();
print_r($_SESSION);
//before destroying the session
//printing the session
unset($_SESSION['name']);
unset($_SESSION['age']);
echo 'Session destroyed';
//after destroying the session
//printing the session
print_r($_SESSION);
?>

Sortie :

Séances en PHP

Comment détruire une session ?

Dans l'exemple suivant, nous détruisons une session.

Pour détruire la session, nous allons d'abord vérifier la valeur de la session puis détruire la session. et imprimez à nouveau la session, qui sera un tableau vide car la session n'existe pas.

Exemple n°1

Code :

<?php
//example to destroy session
//starting a session
session_start();
//to completely destroy a session
session_destroy();
echo 'Session destroyed';
//after destroying the session
//printing the session
echo '<br />';
print_r($_SESSION);
?>

Sortie :

Séances en PHP

Ici, dans le programme, on voit que dans la première ligne, on démarre la session et initialise la variable count à 0. ensuite, on vérifie si une variable de session est définie ou non. ici, nous vérifions une condition si un nom de session page_views est défini ; si oui, alors incrémentez la valeur de la variable de comptage de un, et sinon, initialisez la valeur de comptage à un.

Exemple n°2

Code :

<?php
session_start();
$count = 0;
if(!isset($_SESSION['page_views'])) {
$_SESSION['page_views'] = 1;
$count = $_SESSION['page_views'];
} else {
$_SESSION['page_views'] = $_SESSION['page_views'] + 1 ;
$count = $_SESSION['page_views'];
}
?>
<html>
<head><title>Finding count of page views</title></head>
<body>
<?php echo '<br>'. 'The count of page views '. $count;
?>
</body>
</html>

Sortie :

Séances en PHP

Comment activer la session automatique en PHP ?

Pour activer les sessions automatiques en PHP, nous devons apporter une modification au fichier de configuration, qui est php.ini.

Où php.ini est un fichier de configuration par défaut

Les sessions ne démarrent pas automatiquement ; pour qu'une session fonctionne automatiquement, nous devons faire ce qui suit, mais une fois cela fait, la session démarre automatiquement pour tous les fichiers et se ferme une fois le délai par défaut écoulé.

Donc dans le fichier php.ini, on va chercher

session.auto_start = 0

et définissez la valeur sur 1 comme ceci

session.auto_start = 1

Cela aidera PHP à démarrer automatiquement les sessions.

Importance de la séance

Une certaine importance de la session est écrite ci-dessous.

  • Comme $_COOKIE, nous avons $_SESSION, qui est une variable superglobale et stockée sur le serveur.
  • Si le navigateur de l'utilisateur ne prend pas en charge les cookies, nous pouvons utiliser la session. Chaque session se voit attribuer un identifiant unique en fonction de la visite de l'utilisateur sur le site Web.
  • En termes de stockage de données, la session stocke plus de données qu'un cookie ne peut en stocker.
  • La session sert à transporter des informations d'une page à une autre.
  • La session peut être utilisée pour obtenir le nombre de visiteurs sur le site Web.
  • La session est également utilisée à des fins d'authentification.
  • Les identifiants de session générés sont uniques.

Conclusion

Cet article explique ce qu'est une session, comment fonctionne la session, comment créer la session, comment supprimer une session particulière.

De plus, il est expliqué comment faire fonctionner les sessions, en démarrant automatiquement en définissant la valeur de la directive session.auto_start() sur 1.

Ensuite, avec un exemple, il a été expliqué comment compter combien de fois la page a été consultée à l'aide de sessions. En outre, il est expliqué quelle est l'importance de la séance et comment elle est utile à différentes fins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Cookie en PHPArticle suivant:Cookie en PHP