php - 在类中访问 session 变量

标签 php session variables

当需要检索或保留 session 值时,在类构造函数上使用 session_start 是否被认为是正常的?最佳做法?

除非从 __contruct 调用 session_start,否则无法从类中检索 session 变量。

session_start();    

if(isset($_REQUEST['siteid'])){
    $siteid = $_REQUEST['siteid'];
    $_SESSION['siteid'] = $siteid;
    echo $siteid;
}else{
    $siteid = "";
}
require_once 'common/lib_constant.php';
require_once 'common/database.php';
require_once 'common/common.class.php';
$commonClass = new commonClass();

最佳答案

最佳做法是从 Bootstrap 启动 session 。
和 session 本身通过某种智能包装器类进行访问(有关示例,请参见 ZF)。
这样您应该 100% 确定您的代码中不会出现 header 问题和重复的 session_start 调用。
一个类可以多次实例化/请求...bootstrap 仅运行一次/请求。

关于php - 在类中访问 session 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5874976/

相关文章:

php - 将用户限制在自己的页面并显示他们自己的项目

database - 保持数据库连接打开是否昂贵?

session - Cookie 未保存

PHP MySQL 查询其中 x = $variable

java - 不同switch case中的变量不能重名?

bash - 无法访问bash括号内的变量

php - 在php中尚不存在的文件夹中创建文件

php - Mac 上 memcached 的 GUI 安装程序?

php imagick 注释抗锯齿

javascript - 在哪里可以找到 neo4j 3.0 驱动程序 session .run .then 等方法的列表