session工作机制介绍

  • 为每个访问者创建一个唯一的id(UID)

  • 然后基于这个UID来存储变量

  • UID 存储在 cookie 中,或者通过 URL 进行传递

禁用cookie后如何使用session

1、在chrome中禁用cookie

设置->高级设置->隐私设置->内容设置->Cookie->阻止网站设置任何数据

2、php.ini启用url传递

session.use_only_cookies = 0

3、测试

//a.php

<?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="http://localhost/b.php">page 2</a>';

// 如果不是使用 cookie 方式传送会话 ID,则使用 URL 改写的方式传送会话 ID
echo '<br /><a href="http://localhost/b.php?' . SID . '">page 2</a>';
//b.php

<?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']);

测试结果:

\1.PNG


参考网站:



登陆发表评论