我有一个我正在创建的 PHP 类,它将与$_SESSION
Super global 一起使用,但对工作环境进行了更深入的思考。我决定在__construct
调用类时不使用 来启动会话,而是将其留给:$Class->init();
。
我希望该类能够迁移到已经调用过的网页session_start
...再次,回到session_start()
构造函数之外。我的代码如下:
class Session {
protected $Session_Started = false;
public function init(){
if ($this->Session_Started === false){
session_start();
$this->Session_Started = true;
return true;
}
return false;
}
public function Status_Session(){
$Return_Switch = false;
if (session_status() === 1){
$Return_Switch = "Session Disabled";
}elseif (session_status() === 2){
$Return_Switch = "Session Enabled, but no sessions exist";
}elseif (session_status() === 3){
$Return_Switch = "Session Enabled, and Sessions exist";
}
return $Return_Switch;
}
/*Only shown necessary code, the entire class contents is irrelevant to the question topic */
随着代码的显示..很明显,我正在验证会话之前是否已通过两种方法调用过,内部引用:$this->Session_Started
等于true
或false
我也在打电话session_status()
并验证响应。
早些时候,我说我希望它迁移到可能已经调用过的站点,session_start()
验证会话是否已被调用的最佳方法是什么?..我希望这个类做的最后一件事是开始抛出导入和初始化类时出错