Rumah > tajuk utama > teks badan

php中的session使用方法

无忌哥哥
Lepaskan: 2020-07-25 11:59:21
asal
3806 orang telah melayarinya

详细关于 php session的使用方法见:php session 会话专题

 * session会话

 * session与cookie非常像,只是把用户数据保存到了服务器上页已

 * 而查询的钥匙却仍在浏览器上,用一个特殊的cookie保存着

 * 这个特殊的钥匙叫:PHPSESSID(会话ID)

//必须在所有的html代码输出到浏览器之前开启会话

//session_start()会向浏览器发送一个32位的16进制的PHPSESSID

//开启会话之前绝对不能有:echo,print,include,甚至空行等之类的语句

session_start();
Salin selepas log masuk

//一旦开启成功,我们就可以把用户的会话信息保存到服务器上了

//会话的所有操作都是通过超全局变量$_SESSION来实现

$_SESSION['user_name'] = 'admin';
$_SESSION['user_id'] = 1;
Salin selepas log masuk

//在服务器上的tmp/php/32位对应PHPSESSID的文本文件

//user_name|s:5:"admin";user_id|i:1;

//语法: 变量名|类型:值;每个session变量之间用分号隔开,字符串类型会有长度提示

//会话访问与cookie非常像,直接使用$_SESSION数组

echo $_SESSION['user_name'];
Salin selepas log masuk

//更新

$_SESSION['user_name'] = 'peter';
echo $_SESSION['user_name'];
Salin selepas log masuk

//删除

//1.删除单个session变量

unset($_SESSION['user_id']);
Salin selepas log masuk

//2.删除全部session变量,将服务器上的session文件内容清空

$_SESSION = [];
Salin selepas log masuk

//3.清空所有用户的session,将服务器上的session文件删除

session_destroy();
Salin selepas log masuk

//如果想彻底的删除session,浏览器上的PHPSESSID对应的cookie也应该一并删除

//执行的时候,前面不能再有设置语句了,否则会重新再生成一个PHPSESSID

setcookie('PHPSESSID', '', time()-3600);
Salin selepas log masuk

//总结:正确且安全彻底的删除session应该包括以下三步:

$_SESSION = [];  //清空当前用户的所有会话信息
session_destroy(); //清空当前域名下所有的会话信息
setcookie('PHPSESSID', '', time()-3600); //删除保存在客户端上的会话id
Salin selepas log masuk
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan