Dans le développement de PHP, la gestion des sessions est un élément important de la création de sites Web dynamiques. Grâce à la gestion des sessions, les développeurs peuvent facilement suivre l'état des utilisateurs et les données. PHP fournit plusieurs fonctions pour implémenter la gestion de session, où la fonction Session_Register () était souvent utilisée dans les versions antérieures de PHP, mais avec la libération de PHP 5.4 et plus tard, la fonction Session_Register () a été obsolète et n'est pas recommandée. Cependant, il est toujours très significatif pour les débutants qui sont des projets hérités ou ceux qui apprennent la gestion des sessions PHP.
Session_register () est une fonction utilisée par PHP pour enregistrer une variable dans la session en cours afin que la variable soit valide pour le cycle de vie de la session. En appelant les variables enregistrées par cette fonction, ils sont accessibles et modifiés dans d'autres pages de la session. Il convient de noter que cette fonction a été marquée comme abandonnée dès PHP 5.4 et a été officiellement recommandé d'utiliser un tableau hyperglobal $ _Session pour le remplacer.
Avant d'utiliser la fonction Session_Register () dans PHP, Session_Start () doit être appelé pour démarrer la session. Vous pouvez ensuite utiliser session_register () pour enregistrer les variables qui doivent être enregistrées dans la session.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Démarrer une session</span></span><span>
</span><span><span class="hljs-title function_ invoke__">session_start</span></span><span>();
</span><span><span class="hljs-comment">// Enregistrer les variables à la session</span></span><span>
</span><span><span class="hljs-variable">$username</span></span><span> = </span><span><span class="hljs-string">"JohnDoe"</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">session_register</span></span><span>(</span><span><span class="hljs-string">'username'</span></span><span>);
</span><span><span class="hljs-comment">// Utilisez cette variable sur d'autres pages</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Welcome, "</span></span><span> . </span><span><span class="hljs-variable">$_SESSION</span></span><span>[</span><span><span class="hljs-string">'username'</span></span><span>];
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Le processus du code ci-dessus est: Démarrez d'abord la session, puis enregistrez une variable nommée nom d'utilisateur à la session en cours. Les autres pages accèdent ensuite à la variable de la session via $ _Session [«nom d'utilisateur»] .
Dans PHP 5.4, Session_Register () est marqué comme obsolète et n'est plus pris en charge après PHP 5.4. En effet, Session_Register () affectera les variables de portée globales et rendra facilement le programme difficile à maintenir et à déboguer. De plus, l'utilisation du tableau $ _Session pour accéder directement aux données de session est non seulement plus intuitive, mais évite également les problèmes de sécurité potentiels et les erreurs de code.
La documentation officielle recommande d'utiliser $ _Session pour traiter les données de session.
À partir de PHP 5.4, il est recommandé d'utiliser le tableau $ _Session pour enregistrer les données de session. Cette méthode est plus simple, plus facile à comprendre et en sécurité. Voici comment utiliser $ _Session au lieu de session_register () pour la gestion de session:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Démarrer une session</span></span><span>
</span><span><span class="hljs-title function_ invoke__">session_start</span></span><span>();
</span><span><span class="hljs-comment">// utiliser $_SESSION Enregistrer les données</span></span><span>
</span><span><span class="hljs-variable">$_SESSION</span></span><span>[</span><span><span class="hljs-string">'username'</span></span><span>] = </span><span><span class="hljs-string">"JohnDoe"</span></span><span>;
</span><span><span class="hljs-comment">// Accéder à ces données sur d'autres pages</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Welcome, "</span></span><span> . </span><span><span class="hljs-variable">$_SESSION</span></span><span>[</span><span><span class="hljs-string">'username'</span></span><span>];
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
De cette façon, nous pouvons accéder et modifier les variables de nom d'utilisateur dans la session directement via $ _SESSION [«nom d'utilisateur»] sans utiliser session_register () .
Le tableau $ _Session peut contenir plusieurs types de données, tels que des chaînes, des tableaux, des objets, etc. Vous pouvez ajouter, mettre à jour ou supprimer des données dans une session à tout moment. Les opérations communes comprennent:
Ajouter des données :
<span><span><span class="hljs-variable">$_SESSION</span></span><span>[</span><span><span class="hljs-string">'user_id'</span></span><span>] = </span><span><span class="hljs-number">123</span></span><span>;
</span></span>
Modifier les données :
<span><span><span class="hljs-variable">$_SESSION</span></span><span>[</span><span><span class="hljs-string">'user_id'</span></span><span>] = </span><span><span class="hljs-number">456</span></span><span>;
</span></span>
Supprimer les données :
<span><span><span class="hljs-keyword">unset</span></span><span>(</span><span><span class="hljs-variable">$_SESSION</span></span><span>[</span><span><span class="hljs-string">'user_id'</span></span><span>]);
</span></span>
Détruisez toute la session :
<span><span><span class="hljs-title function_ invoke__">session_destroy</span></span><span>();
</span></span>
La fonction Session_Register () était une fonction couramment utilisée dans la gestion de la session PHP, mais en raison de certains problèmes et lacunes, il a été officiellement abandonné après PHP 5.4. Il est recommandé d'utiliser le tableau $ _Session à la place. En utilisant $ _Session , nous pouvons gérer les données de session de manière plus flexible et en toute sécurité.
Bien que Session_Register () ait été abandonné, la compréhension de son utilisation historique est toujours utile pour la maintenance de certains anciens projets. Dans le même temps, l'apprentissage et la maîtrise des méthodes de gestion de la conversation PHP modernes sont l'une des compétences essentielles pour les développeurs.
Étiquettes associées:
session_register