我现在有一个彗星页,如果我打电话session_start
顶部则会话冻结,我的工作围绕做的是这样的:我怎么会不调用在session_start
function getTables($sessionID = null){
if(!isset($this->output)){
$this->output = array();
}
if(!isset($this->output[$this->sessID])){
$this->output[$this->sessID] = array();
}
$hostname = php_uname("n");
$sess_ini = session_save_path();
chdir($sess_ini);
if(false === ($save = @file_get_contents("sess_$this->sessID"))){
$cwd = getcwd();
chdir($this->location);
return (isset($this->returnJSON[$this->sessID])?$this->returnJSON[$this->sessID]
:json_encode(array(
'sess_local'=>"$sess_ini/sess_$this->sessID",
'save'=>$save,
'hostname'=>$hostname,
'cwd'=>$cwd,
'reg_local'=>$this->location,
)
)
);
}
chdir($this->location);
//session_id($sessionID);
$sessions = explode("|",$save);
$_SESSION['all'] = array();
foreach($sessions as $key=>$sess){
if(trim($sess)=='all' && isset($sessions[$key+1])){
$_SESSION['all'] = unserialize(trim(urldecode($sessions[$key+1])));
break;
}
}
...
有一个更好的方式让我变得会话变化多数民众赞成不进入会议文件?
我认为你需要解决和解决根本问题(为什么'session_start()'让事情冻结)而不是 – 2011-04-21 19:19:18
@詹姆斯C这是我的prev问题....它解决了从session_start彗星的无限帧 - http://stackoverflow.com/questions/5553830/how-do-irefresh-the-session-in-comet – Neal 2011-04-21 19:21:34
@詹姆斯,这是由于事实,有限制在PHP与有两个会话目前有相同的ID – Neal 2011-04-21 19:28:01