Heim > Backend-Entwicklung > PHP-Tutorial > Ausführliche Erklärung und Beispielcode zur Verwendung von PHP-Sitzungsvariablen

Ausführliche Erklärung und Beispielcode zur Verwendung von PHP-Sitzungsvariablen

高洛峰
Freigeben: 2023-03-04 08:20:02
Original
2123 Leute haben es durchsucht

Ausführliche Erklärung und Beispielcode zur Verwendung von PHP-Sitzungsvariablen

Wenn Sie eine Anwendung ausführen, öffnen Sie sie, nehmen Änderungen vor und schließen sie dann. Es ähnelt stark einer Sitzung. Der Computer weiß, wer Sie sind. Es weiß, wann Sie die Anwendung starten und wann sie beendet wird. Aber im Internet gibt es ein Problem: Der Server weiß nicht, wer Sie sind und was Sie tun, und das liegt daran, dass HTTP-Adressen ihren Status nicht beibehalten.
PHP-Sitzung löst dieses Problem, indem Benutzerinformationen für die spätere Verwendung auf dem Server gespeichert werden (z. B. Benutzername, gekaufte Artikel usw.). Sitzungsinformationen sind jedoch temporär und werden gelöscht, nachdem der Benutzer die Website verlässt. Wenn Sie Informationen dauerhaft speichern müssen, können Sie die Daten in einer Datenbank speichern.

Empfohlene verwandte Themen: PHP-Sitzung (einschließlich Bilder, Videos, Fälle)

Kopieren Sie das Handbuch und versuchen Sie es dann jedes einzelne und schreibe es auf, damit du es selbst überprüfen kannst. Wer hat uns gesagt, dass wir es einfach lernen sollen? Die Sitzung hat etwa 12 Funktionen:

  • session_start: erste Sitzung.

  • session_destroy: Sitzung beenden.

  • session_unset: Sitzungsspeicher freigeben.

  • Sitzungsname: Zugriff auf den aktuellen Sitzungsnamen.

  • session_module_name: Greifen Sie auf das aktuelle Sitzungsmodul zu.

  • session_save_path: Greifen Sie auf den aktuellen Sitzungspfad zu.

  • session_id: Zugriff auf den aktuellen Sitzungscode.

  • session_register: Neue Variablen registrieren.

  • session_unregister: Registrierte Variablen löschen.

  • session_is_registered: Überprüfen Sie, ob die Variable registriert ist.

  • session_decode: Sitzungsdatendekodierung.

  • session_encode: Sitzungsdatenkodierung.

Es gibt auch eine globale Variable: $_SESSION

Bevor Sie Benutzerinformationen in einer PHP-Sitzung speichern, müssen Sie zunächst die Sitzung starten.
Hinweis: session_start() Die Funktion muss vor der Bezeichnung platziert werden:

<?php session_start(); ?>

<html>
<body>

</body>
</html>
Nach dem Login kopieren

Variable der Speichersitzung

<?php
session_start();
// store session data
$_SESSION[&#39;views&#39;]=1;
?> 
<html>
<body>

<?php
//retrieve session data
echo "Pageviews=". $_SESSION[&#39;views&#39;];
?>

</body>
</html>
 [html]
终结 Session
unset() 函数用于释放指定的 session 变量:
[code]
<?php
unset($_SESSION[&#39;views&#39;]);
?>
Nach dem Login kopieren

Sie können die Sitzung auch vollständig über session_destroy() beenden. Funktion:

<?php
session_destroy();
?>
Nach dem Login kopieren

Beispiel:

<?php 
session_start(); 
switch ( $_GET[&#39;action&#39;] ){ 
case "loginif"; 
//登陆验证,假定session储存的秘密应该等于123才为正确 
if ($_SESSION[&#39;pass&#39;]=="123"){echo "密码正确 您可以执行注销";}else{echo "密码错误,您可以重新登陆";} 
break; 
case "logout"; 
//注销登陆 
session_unset(); 
session_destroy(); 
echo "注销成功!可以判断一下密码是否正确来看看是不是成功注销"; 
break; 
case "login"; 
//写入session以供验证, 
$pass="123";//密码 
$_SESSION[&#39;pass&#39;]=$pass; 
echo "写入登陆密码了 去判断密码成功与否吧。"; 
break; 
} 
?> 
<p>假定本页名为temp.php </p> 
<p><a href="temp.php?action=login">用户进行登陆post,程序处理写入session</a></p> 
<p><a href="temp.php?action=loginif">判断用户密码是否正确</a></p> 
<p><a href="temp.php?action=logout">登陆成功的用户注销登陆</a></p>
Nach dem Login kopieren

Ich habe die Verwendung von Sitzungen in PHP zusammengefasst.

(1) Sitzung starten
Fügen Sie vor jeder Verwendung der Sitzung diesen Satz hinzu: „session_start();“. Wie der Name schon sagt, besteht die Funktion dieser Funktion darin, die Verwendung der Sitzung zu starten.
(2) Sitzung registrieren
Erstellen Sie zunächst ein globales Array (beachten Sie, dass es als global definiert sein muss, sonst kann es nicht auf anderen Seiten verwendet werden), z. B. $login, wobei $login['name'] ="Victor" , $login['pwd']="111111" und rufen Sie dann die Funktion "session_register(login);" auf, die Sitzung wurde erfolgreich registriert.
(3) Verwenden von Variablen in der Sitzung
Ähnlich wie beim Registrieren einer Sitzung müssen Sie zunächst ein globales Array erstellen. Anschließend ist es dasselbe wie bei der Verwendung eines normalen Arrays.
(4) Bestimmen Sie, ob die Sitzung registriert ist
Es ist sehr einfach, verwenden Sie einfach „if (session_is_registered(login))“, um zu beurteilen.
(5) Sitzung deinstallieren
Es ist auch sehr einfach, einfach „session_unregister(login);“.
Hinweis: Stellen Sie sicher, dass Sie (1) vor (2) (3) (4) (5) ausführen.

Ein Beispiel ist unten aufgeführt:

index.htm

<html> 
<head> 
<title>测试</title> 
</head> 
<body> 
<FORM METHOD=POST ACTION="login.php"> 
用户名:<INPUT TYPE="text" NAME="name"><br/> 
密码:<INPUT TYPE="password" name="pwd"><br/> 
<INPUT TYPE="submit" value="提交"> 
</FORM> 
</body> 
</html>
Nach dem Login kopieren

login.php

<?php 
global $login; 
if ($_POST[&#39;name&#39;]!="Victor" || $_POST[&#39;pwd&#39;]!="111111") 
{ 
        echo "登陆失败"; 
        echo "请<a href=index.htm>返回</a>"; 
        exit; 
} 
$login = array(&#39;name&#39;=>$_POST[&#39;name&#39;], 
                           &#39;pwd&#39;=>$_POST[&#39;pwd&#39;]); 
session_start(); 
session_register(login); 
echo "<a href=info.php>查看信息</a><br/>"; 
echo "<a href=logout.php>退出登陆</a><br/>"; 
?>
Nach dem Login kopieren

info.php

<?php 
session_start(); 
if (session_is_registered(login)) 
{ 
        global $login; 
        echo "hello,".$login[&#39;name&#39;]."<br/>"; 
        echo "<a href=logout.php>退出登陆</a><br/>"; 
} 
else 
{ 
        echo "非法操作<br/>"; 
        exit; 
} 
?>
Nach dem Login kopieren

logout.php

<?php 
session_start(); 
session_unregister(login); 
header("location:index.htm"); 
?>
Nach dem Login kopieren

Ausführlichere Erklärungen zur Verwendung von PHP-Sitzungsvariablen und Artikel zum Beispielcode finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage