PHP会话跟踪末与文件处理系统一(43)

php中文网
发布: 2016-08-08 09:23:12
原创
1045人浏览过

注销变量

1、unset ($_SESSION[‘xxx’])删除单个session变量,unset($_SESSION[‘xxx’]) 用来unregister一个已注册的session变量。其作用和session_unregister()相同。     session_unregister()在PHP5中不再使用。
  注:unset($_SESSION) 此函数千万不可使用,它会将全局变量$_SESSION销毁,而且还没有可行的办法将其恢复。用户也不再可以注册$_SESSION变量。
2、$_SESSION=array() 删除多个session变量
3、session_unset() 删除所有session变量

销毁会话

session_destroy()结束当前的会话,并清空会话中的所有资源。该函数不会unset(释放)和当前session相关的全局变量,也不会删除客户端的session cookie
返回值:布尔值。
功能说明:这个函数结束当前的session,此函数
没有参数,且返回值均为true,

注:PHP默认的session是基于cookie的,如果要删除cookie的话,必须借助setcookie()函数。

立即学习PHP免费学习笔记(深入)”;

删除session的案例

<?<span>php
</span><span>//</span><span> 初始化session.</span><span>session_start();
</span><span>/*</span><span> 删除所有的session变量..也可用
unset($_SESSION[&lsquo;xxx&rsquo;])逐个删除。</span><span>*/</span><span>$_SESSION </span>= array();<span>//</span><span>或session_unset();</span><span>/*</span><span>删除sessinid.由于session默认是基于cookie的,所
以使用setcookie删除包含session id的cookie.</span><span>*/</span><span>if</span><span> (isset($_COOKIE[session_name()])) {
setcookie(session_name(), </span><span>'</span><span>'</span>, time()-<span>42000</span><span>,
</span><span>'</span><span>/</span><span>'</span><span>);
}
</span><span>//</span><span> 最后彻底销毁session.</span><span>session_destroy();
</span>?>
登录后复制

持久化session

请求结束后所有注册的变量都会自动被序列化(为了方便保存到服务器端的会话文本文件中) ,读取时再进行还原。
??手动编码与解码:
??session_encode():序列号-编码
??session_decode():还原-解码
??警告: 有些类型的数据不能被序列化因此也就不能保存在会话中。包括resource变量或者有循环引用的对象(即某对象将一个指向自己的引用传递给另一个对象)。

配置会话控制

php.ini配置文件中有一组会话配置选项,可以对其进行设置。如下:
??session.auto_start= 0 ;在请求启动时初始化session
??session.cache_expire= 180 ; 设置缓存中的会话文档在n 分钟后过时
??session.cookie_lifetime= 0 ;设置按秒记的cookie的保存时间,相当于设置Session的过期时间,为0时表示直到浏览器被重启

也可以在php.ini里启动session.auto_start=1,这样就无需每次使用session之前都要调用session_start()。
但启用该选项也有一些限制,如果确实启用了session.auto_start,则不能将对象放入会话中,因为类定义必须在启动会话之前加载以在会话中重建对象。

讯飞听见会议
讯飞听见会议

科大讯飞推出的AI智能会议系统

讯飞听见会议 19
查看详情 讯飞听见会议

??session.cookie_path= / ; cookie的有效路径
??session.cookie_domain= ; cookie的有效域
??session.name= PHPSESSID;用在cookie里的session的名字
??session.save_handler= files ; 用于保存/取回数据的控制方式
??session.save_path= /tmp; 在save_handler设为文件时传给控制器的参数,这是数据文件将保存的路径.
??session.use_cookies= 1 ; 是否使用cookies

文件处理系统

文件类型

??在程序运行时,程序本身和数据一般都存在内存中,当程序运行结束后,存放在内存中的数据被释放。
??如果需要长期保存程序运行所需的原始数据,或程序运行产生的结果,就必须以文件形式存储到外部存储介质上。
??文件一般指存储在外部介质上具有名字(文件名)的一组相关数据集合。用文件可长期保存数据,并实现数据共享。
??PHP是以UNIX的文件系统为模型的。因此在Windows系统中我们只能获得”file”、”dir”或者“unknown”三种文件类型。而在UNIX系统中,我们可以获得block、char、dir、fifo、file、link和unknown七种类型。
??可以使用函数filetype()获取文件的具体类型。
??语法:string filetype( string filename )

Liunx系统中7种文件类型说明

is_dir( ) --判断给定文件名是否是一个目录
语法结构:boolis_dir(名称)
返回类型:如果文件名存在并且是一个目录则返回true,否则返回false。
??is_executable( ) --判断给定文件名是否可执行
语法结构:boolis_executable(名称)
返回类型:如果文件存在且可执行则返回true ,否则返回false 。
??is_file( ) --判断给定文件名是否为一个正常的文件
语法结构:boolis_file(名称)
返回类型:如果文件存在且为正常的文件则返回true 。
??is_link( ) --判断给定文件名是否为一个符号连接
语法结构:boolis_link(名称)
返回类型:如果文件存在并且是一个符号连接则返回true。
??is_readable( ) --判断给定文件名是否可读
语法结构:boolis_readable(文件名称)
返回类型:如果文件存在并且可读则返回true。
??is_writable( ) --判断给定的文件名是否可写
语法结构:boolis_writable(文件名称)
返回类型:如果文件存在并且可写则返回true 。

文件的属性

以上就介绍了PHP会话跟踪末与文件处理系统一(43),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号