登录  /  注册

php中如何注册和读取Session会话

伊谢尔伦
发布: 2017-04-26 11:42:13
原创
3054人浏览过

注册session会话    

在php中使用 Session 变量,除了必须要启动,还要经过一个注册的过程,注册和读取 Session 变量,都要通过访问 $_SESSION 数组完成。 从PHP 4.1.0版本起,$_SESSION 如同 $_POST、$_GET和 $_COOKIE等一样成为超级全局数组,但必须在调用  session_start() 函数开启 Session 之后才能使用。 与 $HTTP_SESSION_VARS 不同,$_SESSION总是具有全局的范围,因此不要对 $_SESSION 使用 global 关键字。 在 $_SESSION 关联数组中的键名具有和 PHP中 普通变量名相同的命名规则。

会话变量被创建后,全部保存在数组  $_SESSION 中。通过数组  $_SESSION创建一个会话变量很容易,只要直接给该数组添加一个元素就好了。

比如如下的例子会启动会话,创建一个  Session 变量并赋予一个空值,代码是如下的:

<?php
  session_start();                                       // 启动 Session
  $_SESSION[&#39;name&#39;] = null;                   // 声明一个名为 admin 的变量,并设置为空值 null。
?>
登录后复制

执行脚本以后, Session 变量就会被保存在服务器端的某一个文件夹中。改文件的位置是通过 php.ini 文件,在 session.save_path 属性指定的目录下,为这个访问用户单独创建一个文件,用来保存已经注册的 Session 变量。打个比方, 某个保存 Session 变量 的文件名为类似 “ sess_09403850rf7sk39s67 ” 的形式,文件名中包含了 Session ID,所以每个访问用户在服务器中都有自己的保存 Session 变量文件,而且这个文件可以直接使用文本编辑器来打开。该文件的内容结构如下所示:

变量名 | 类型 : 长度:值 //每个变量都适用相同的结构来保存

如上所述来举一个简单的例子 :

<?php
  //启动 session
   session_start();
  //注册 session 变量,赋值为一个用户名称
  $_SESSION[&#39;usermane&#39;] = "sky";
  //注册 session 变量,赋值为一个用户id
  $_SESSION[&#39;uid&#39;] = 1;
?>
登录后复制

上面的实例中 Session 注册了两个变量,如果在服务器中找到为该用户保存 Session 变量的文件,打开后可以看到如下的内容:

username | s:6: "sky"; uid | i:1:"1"; // 保存用户 Session 中注册的两个变量的内容

读取Session会话

首先需要判断会话变量是否有一个会话ID存在,如果不存在,就创建一个,并且使其能够通过全局数组$_SESSION 进行访问;如果已经存在,则将这个已经创建的会话变量载入以提供给用户使用。

例如:判断存储用户名的 Session 会话变量是否为空,如果不为空,则将该会话变量赋予 $my_value,其代码显示如下:

<?php
  if(!empty($_SESSION[&#39;session_name&#39;])){       //判断存储用户名的  Session 会话变量是否为空
    $my_value = $_SESSION[&#39;session_name&#39;];     //将会话变量赋予一个变量 $my_value
  }
?>
登录后复制

以上就是php中如何注册和读取Session会话的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

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