PHP 会话编码解码
短信预约 -IT技能 免费直播动态提醒
在 PHP 中,会话是一种跨网页处理数据的方式。会话编码和解码操作是存储或读取会话数据时的要求。
在 PHP 中演示使用 session_encode()
和 session_decode
内置函数 session_encode()
将 $_SESSION
数组数据序列化为字符串,然后 session_decode()
再次将会话数据转换为真实格式。
我们通过表单插入数据,然后将其存储到会话中:
test.php
:
<html>
<head>
<title> Demonstration of Session </title>
</head>
<body>
<form action="action.php" method="post" >
<div style="border: 4px solid;padding:10px; width:40%">
Employee Name:<input type="text" name="employee">
ID:<input type="text" name="id">
<input type="submit" value="SUBMIT" name="submit">
</div>
</form>
</body>
</html>
会话像 cookie 一样工作;一旦我们启动会话并开始存储数据,我们就可以使用它直到会话被销毁。
输出:
编码的会话字符串包含由 ;
分隔的所有会话元素。这里应该提到的是,这种序列化与 PHP serialize()
不同。
action.php
:
<?php
if (isset($_POST['submit']))
{
// Start the Session
session_start();
//Form Data
$employee=$_POST['employee'];
$id=$_POST['id'];
//store the form data into session
$_SESSION['employee']=$employee;
$_SESSION['id']=$id;
echo "According to the data from session: <br>";
echo "Hello ". $employee. "! your ID is ".$id."<br><br>";
echo"The encoded Session Data is: <br>";
//encode the session
$session_econded= session_encode();
echo $session_econded."<br><br>";
//decode session
session_decode($session_econded);
echo "Session data after decode: ";
print_r( $_SESSION);
//Destroy the Session
session_destroy();
}
?>
输出:
According to the data from session:
Hello Jack! your ID is 1234
The encoded Session Data is:
employee|s:4:"Jack";id|s:4:"1234";
Session data after decode: Array ( [employee] => Jack [id] => 1234 )
编码数据采用类似于 PHP serialize()
的字符串形式。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341