Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php的会话管理

php的会话管理

WBOY
WBOYasal
2016-07-29 09:15:011345semak imbas

php的会话管理

一.cookie

1.如何获取cookie中的值?

示例通过index.php跳转到a.php获得键为name的对应值jason;

index.php代码:

<?php //设置cookie的键值对
setcookie(&#39;name&#39;,&#39;jason&#39;);
setcookie(&#39;mm&#39;,&#39;mark&#39;);
//跳转页面
header(&#39;Location:a.php&#39;);
a.php代码;

<?php //获取cookie的相应键对应的值
echo $_COOKIE[&#39;name&#39;];
在火狐浏览器执行结果:

php的会话管理

2.如何通过javascript访问cookie?

示例在index.php中通过弹出框

<?php //设置cookie的键值对
setcookie(&#39;name&#39;,&#39;jason&#39;);
setcookie(&#39;mm&#39;,&#39;mark&#39;);
?>



    <meta charset="UTF-8">
    <title>cookie知识点</title>
    <script>
        //用js获取cookie
        alert(document.cookie);
    </script>



显示结果:

php的会话管理

3.如果浏览器或用户禁用了cookie,怎么在页面间传递参数?

示例通过URL参数将b.php的值传递到c.php;

b.php代码:

<?php header(&#39;Location:c.php?name=rose&#39;);
c.php代码:

<?php echo $_GET[&#39;name&#39;];
通过$_GET可获取对应键的值rose.

二.session:

1.每次重新打开浏览器,服务器将分配给客户端一个新的session_id值。

<?php //启用session
session_start();
//访问session_id
echo session_id();
2.如果获取session的键对应的值?

示例通过index.php跳转到a.php显示session的相应键对应的值:

index.php代码;

<?php //启用session
session_start();
//设置session的键值对
$_SESSION[&#39;name&#39;]=&#39;aili&#39;;
//跳转页面
header(&#39;Location:a.php&#39;);
a.php代码:

<?php //启用session
session_start();
//获取session相应键对应的值
if(isset($_SESSION[&#39;name&#39;])){
    echo $_SESSION[&#39;name&#39;];
}else{
    echo &#39;no name found&#39;;
}
最后页面跳转成功显示:aili

3.如果要销毁session该如何操作? (ps应用场景:超时后清除登录状态)

  php提供了session_destroy()可以销毁session。

  在index.php中插入session_destroy():

<?php //启用session
session_start();
//设置session的键值对
$_SESSION[&#39;name&#39;]=&#39;aili&#39;;
//销毁session
session_destroy();
//跳转页面
header(&#39;Location:a.php&#39;);
再执行操作,跳转页面后显示结果为:no name found.

以上就介绍了php的会话管理,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php获取时间(系统时间和网络时间)Artikel seterusnya:iptables详解