文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

php session删除会话的方法介绍

2024-04-02 19:55

关注

这篇文章主要讲解了“php  session删除会话的方法介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php  session删除会话的方法介绍”吧!

删除会话,有三个方法

1、unset();
删除单个会话
<?php
session_register();
$_SESSION["admin"]="aa";
if(!empty($_SESSION['admin'])){
$myvalue=$_SESSION['admin'];
echo $myvalue;
}
//删除session,一个个地删除的
unset($_SESSION["admin"]);  
echo $_SESSION['admin'];
?>
php  session删除会话的方法介绍
只能显示 一个,说明,删除了session


注意:
unset()不可以一次注销整个数组,这样会禁止整个会话功能 ,
如:unset($_SESSION)将全局变量$_SESSION销毁,而且没有办法将其恢复 ,用户也不能再注册 $_SESSION变量,


2、删除多个会话$_SESSION=array();
//删除多个会话,把一个空数组给$_SESSION,把之前的值覆盖了,这样并不是将$_SESSION销毁 ,还可以重新赋值


php  session删除会话的方法介绍




<?php
session_register();
$_SESSION["admin"]="aa";
$_SESSION['name']="叶凌月";
$_SESSION['age']=16;
echo "<pre>";
print_r($_SESSION);
echo "</pre>";
//删除多个会话,把一个空数组给$_SESSION,把之前的值覆盖了,这样并不是将$_SESSION销毁 ,还可以重新赋值
$_SESSION=array();  
echo "<pre>";
print_r($_SESSION);
echo "</pre>";
?>






3、结束当前的会话:
session_destory();


1、出错 :
<?php
session_start();
$_SESSION["admin"]="aa";
$_SESSION['name']="叶凌月";
$_SESSION['age']=16;
echo "<pre>";
print_r($_SESSION);
echo "</pre>";
//结束当前会话
session_destroy($_SESSION);
//session_unset($_SESSION);
echo "<pre>";
print_r($_SESSION);
echo "</pre>";
?>


php  session删除会话的方法介绍
Wrong parameter count for session_destroy()
错误的参数计数session_destroy()
原因 :php  session删除会话的方法介绍
session_destroy();不需要添加参数 ,注销代表的是当前 的会话


注意:
使用session_destroy();要与session_start();一起用不然会受到警告


2、出错,觉得session_destroy();
不起作用,为什么还是会把$_SESSION的值显示 ,是否是注销了还保存有一份在cookie里呢,但是没有创建cookie呀,不管先试试


<?php
session_start();
$_SESSION["admin"]="aa";
$_SESSION['name']="叶凌月";
$_SESSION['age']=16;


setcookie($_SESSION,"",time()-1);
//结束当前会话
session_destroy();


echo "<pre>";
print_r($_SESSION);
echo "</pre>";
?>
php  session删除会话的方法介绍
Warning: setcookie() expects parameter 1 to be string, array given
你给传递给strlen()的参数不是string类型的。
改为
php  session删除会话的方法介绍


结果还是显示 了
php  session删除会话的方法介绍



原因 大解决:
1、session 是一个会话,在session_start() 的时候建立。
2、$_SESSION 是一个全局数组,和其他的全局数组没有任何区别。只是php在创建一个会话的时候,会顺便创建一个全局数组来保存会话的内容,这个数组又刚好叫$_SESSION,和我们自己去创建的其他数组没有什么不一样。
3、session_start() 执行的时候,开启了会话,首先是如果该会话没有被创建,则在系统的tmp目录中创建了session文件(默认,可自定义),并且在当前会话的执行脚本创建全局数组$_SESSION,这时的$_SESSION是一个空数组。如果会话存在,则读取session文件中的内容,建立$_SESSION数组。
4、session_destroy() ,手册中明确的说道:destroys all of the data associated with the current session. It does not unset any of the global variables associated with the session, or unset the session cookie. To use the session variables again, session_start() has to be called.
不会删除 session 的全局变量和 session相关cookie,只是结束了这次会话。作为一个普普通通的全局变量,
如果我们不需要乐得话,就将他 unset() 掉。如果想再次开启会话,就需要再一次session_start(),但是session_start() 重新建立会话,会重新初始化$_SESSION数组,session_start()之后$_SESSION 就又是一个空数组了


<?php
session_start();
$_SESSION["admin"]="aa";
$_SESSION['name']="叶凌月";
$_SESSION['age']=16;
//结束当前会话
session_destroy();


?>
<?php
session_start();
echo "<pre>";
print_r($_SESSION);
echo "</pre>";
?>

php  session删除会话的方法介绍

修改下


php  session删除会话的方法介绍
总结 :
session_destroy();只是仅仅结束当前会话,而且是用之前要与session_start();一起用,session_start();是初始化变量$_SESSION相当于清除了数组里的变量


还有session_destory();与session_unset();得到的结果不一样,
要一样,session_destroy();重新启动一次,session_start();

php  session删除会话的方法介绍php  session删除会话的方法介绍php  session删除会话的方法介绍

感谢各位的阅读,以上就是“php  session删除会话的方法介绍”的内容了,经过本文的学习后,相信大家对php  session删除会话的方法介绍这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯