博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
$_SESSION和session_start示例
阅读量:5776 次
发布时间:2019-06-18

本文共 1952 字,大约阅读时间需要 6 分钟。

hot3.png

$_SESSION

$HTTP_SESSION_VARS [已弃用]

$_SESSION -- $HTTP_SESSION_VARS [已弃用] — Session 变量

说明

当前脚本可用 SESSION 变量的数组。更多关于如何使用的信息,参见 文档。

$HTTP_SESSION_VARS包含相同的信息,但它不是一个。   (注意$HTTP_SESSION_VARS和$_SESSION是不同的变量,PHP 处理它们的方式不同)

更新日志

版本 说明
4.1.0 引入$_SESSION,弃用$HTTP_SESSION_VARS。

注释

Note:

“Superglobal”也称为自动化的全局变量。这就表示其在脚本的所有作用域中都是可用的。不需要在函数或方法中用global $variable; 来访问它。

参见

  • - 启动新会话或者重用现有会话

session_start

(PHP 4, PHP 5)

session_start — 启动新会话或者重用现有会话

说明

bool session_start    ( void   )

session_start() 会创建新会话或者重用现有会话。  

如果通过 GET 或者 POST 方式,或者使用 cookie 提交了会话 ID,则会重用现有会话。

当会话自动开始或者通过 session_start() 手动开始的时候,PHP 内部会调用会话管理器的 open 和 read 回调函数。会话管理器可能是 PHP 默认的,也可能是扩展提供的(SQLite 或者 Memcached 扩展),也可能是通过 设定的用户自定义会话管理器。通过 read 回调函数返回的现有会话数据(使用特殊的序列化格式存储),PHP 会自动反序列化数据并且填充 $_SESSION 超级全局变量。

要想使用命名会话,请在调用 session_start() 函数之前调用 函数。

如果启用了 选项,session_start() 函数会注册一个内部输出管理器,该输出管理器完成 URL 重写的工作。

如果用户联合使用   和 ob_gzhandler 函数,那么函数的调用顺序会影响输出结果。例如,必须在开始会话之前调用 ob_gzhandler 函数完成注册。

返回值

成功开始会话返回 TRUE ,反之返回 FALSE  

更新日志

版本 说明
5.3.0 如果函数调用失败返回 FALSE,之前版本返回了 TRUE
4.3.3 在 PHP 4.3.3 中,会话开始之后调用 session_start() 函数会引发 E_NOTICE 级别的错误,并且第二次请求开始会话的调用会被忽略。

范例

Example #1

会话示例:page1.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="page2.php">page 2</a>';
// 如果不是使用 cookie 方式传送会话 ID,则使用 URL 改写的方式传送会话 ID
echo '<br /><a href="page2.php?' SID '">page 2</a>';
?>

请求page1.php页面之后,第二个页面page2.php就会包含会话数据。请查阅 获取更多关于的信息,   在该参考页面中有关于常量 SID 的详细说明。

Example #2 

会话示例:page2.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']);
// 类似 page1.php 中的代码,你可能需要在这里处理使用 SID 的场景
echo '<br /><a href="page1.php">page 1</a>';
?>

注释

Note:

要使用基于 cookie 的会话,    必须在输出开始之前调用 session_start() 函数。

转载于:https://my.oschina.net/ajian2014/blog/324400

你可能感兴趣的文章
统计数据库大小
查看>>
IO流的学习--文件夹下文件的复制
查看>>
第十六章:脚本化HTTP
查看>>
EXCEL表中如何让数值变成万元或亿元
查看>>
nginx在响应request header时候带下划线的需要开启的选项
查看>>
Linux下DHCP服务器配置
查看>>
AndroidStudio中导入SlidingMenu报错解决方案
查看>>
myeclipse显示行号
查看>>
编写高性能的java程序
查看>>
Spring 的配置详解
查看>>
linux已经不存在惊群现象
查看>>
上位机和底层逻辑的解耦
查看>>
关于微信二次分享 配置标题 描述 图片??
查看>>
springcloud使用zookeeper作为config的配置中心
查看>>
校园火灾Focue-2---》洗手间的一套-》电梯
查看>>
css控制文字换行
查看>>
bzoj1913
查看>>
L104
查看>>
分镜头脚本
查看>>
链表基本操作的实现(转)
查看>>