session可以用来做什么:网上商城的购物车,保存用户登陆信息,防止用户非法登陆到某一页面等
session是一种服务器技术
session可以保存的数据有字符串,对象,数据等
PHP session 变量用于存储关于用户会话(session)的信息,或者更改用户会话(session)的设置。Session 变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的。
初始化session
session_start ([ array $options = array() ] ) : bool
成功开始会话返回 TRUE ,反之返回 FALSE
保存数据
<?php
// page1.php
session_start();
echo 'Welcome to page #1';
$_SESSION['favcolor'] = 'green';
$_SESSION['animal'] = 'cat';
$_SESSION['time'] = time();
// 如果使用 cookie 方式传送会话 ID
echo '<br /><a href="page2.php">page 2</a>';
// 如果不是使用 cookie 方式传送会话 ID,则使用 URL 改写的方式传送会话 ID
echo '<br /><a href="page2.php?' . SID . '">page 2</a>';
?>
获取数据
<?php
// page2.php
session_start();
echo 'Welcome to page #2<br />';
echo $_SESSION['favcolor']; // green
echo $_SESSION['animal']; // cat
echo date('Y m d H:i:s', $_SESSION['time']);
// 类似 page1.php 中的代码,你可能需要在这里处理使用 SID 的场景
echo '<br /><a href="page1.php">page 1</a>';
?>
更新数据
更新数据就是重新设置数据
<?php
session_start();
$_SESSION['favcolor'] = 'red';
?>
删除信息
session_unset — 释放会话变量
session_unset ( void ) : void
session_destroy — 销毁一个会话中的全部数据
session_destroy ( void ) : bool
session_destroy() 销毁当前会话中的全部数据, 但是不会重置当前会话所关联的全局变量, 也不会重置会话 cookie。 如果需要再次使用会话变量, 必须重新调用session_start()
<?php
session_start();
//删除某一个
session_unset(_SESSION['favcolor'] ])
//删除当前浏览器对应的session文件
sessiodang'qiann_destroy ( ) ;
?>
session的细节讨论
1、session数据默认保存时间是1440秒,可以通过配置文件修改
session.gc.maxlifetime =1440,这个时间是1440秒内,没有使用过这个session
2\session文件存放位置可以修改,通过配置文件
session_save_path="路径/"