php七天学会,14.4 PHP中使用session

了解了session的原理后,我们来学习如何在PHP中使用session。

1.开启session

首先我们要开启session,那么第一个要学习的函数就是

bool session_start()了,这个函数没有参数。在php文件的开始使用

~~~

session_start();

~~~

就可以启用新会话或者重用现有会话了。

2.添加session数据

开启会话之后,那么在接下来的处理中,我们就可以使用$_SESSION变量来存取信息了。我们要知道的是$_SESSION变量是个数组。当我们要把信息存入session的时候应该这么写:

~~~

$_SESSION['userName'] = 'wang';

~~~

3.读取session数据

读取很简单,就像我们使用数组一样,如下:

~~~

$userName = $_SESSION['userName'];

~~~

当然也可以 $_SESSION['userName'] 来用。和数组一样的使用。

4.销毁session数据

我们可以使用很多种方式来销毁session数据。

a) unset函数

我们通过使用类似

~~~

unset($_SESSION['XXX']);

~~~

来销毁session中的 XXX 变量。PS:请不要!请不要!请不要unset($_SESSION),会导致后续无法使用$_SESSION这个变量!!!

b) 空数组赋值给session变量

~~~

$_SESSION = array();

~~~

之前我们说过$_SESSOIN变量是个数组,那么空数组赋值的话也是相当于将当前会话的$_SESSION变量中的值销毁。

c) session_destroy() 函数

这个函数会销毁当前会话中的全部数据,并结束当前会话。但是不会重置当前会话所关联的全局变量, 也不会重置会话 cookie。

5.通过session来检查用户是否登陆和一个简单的购物车例子

例子请查看12.5章节

6.session的扩展:默认session存储在哪里。

在php.ini配置文件中有这么一行 session.save_handler = files,

files,说明了php默认的是用文件读写的方式来保存session的。那么在哪个目录呢?继续看。session.save_path = "/tmp",

这一行前面有个 ; ,说明是被注释的,不过即便这样,php默认的

session 也是保存在这里的,/tmp目录。上图:

![document/2015-08-31/55e44c61f3733](http://box.kancloud.cn/document_2015-08-31_55e44c61f3733.PNG)

从图中我们可以看到确实在这个目录下面,我们顺便看看里面的内容

![document/2015-08-31/55e44c8eb3e27](http://box.kancloud.cn/document_2015-08-31_55e44c8eb3e27.PNG)

我的写入session的语句是:

$_SESSION['as'] = 'as';

解读一下,第一个as代表的是$_SESSION['as']中的as,|后面的s表示的是这是一个字符串类型的数据,2表示的是这个字符串所占的字节数,最后双引号引起来的是值as。

PS:还可以自己动手试试存数字的话,|后面显示什么字母。还有,你还可以试试如果你存中文的话,字节数是多少?自己试!别看了!我不会告诉你的!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值