所有AMFPHP 2.1请求都会启动新会话吗?

时间:2012-03-31 11:01:09

标签: php amfphp

我试图通过在会话启动时将数据存储在会话中来最小化db命中,然后从会话中返回后续请求的数据。但看起来它没有像我预期的那样工作

请参阅下面的测试远程方法

更新:添加了我错过了复制的session_start()

Main.php - 服务类

class Main{
      public function amfRequest(){
         session_start();
         $test = new Test();
         return $test->testSession();
      }
  }

test.php的

class Test(){
     public function testSession(){
     if (!isset($_SESSION['test'])){
        return "setting sesion variable";
        $_SESSION['test'] = "all set!";
    }else{
        return "getting session variable";
           }                
      }

}

预期结果

  • 第一次运行 - 返回设置sesion变量
  • 后续运行 - 返回获取会话变量

但它总是返回设置sesion变量

AMF PHP是否在每次请求时都会破坏会话?如果是这样,那么如何处理会话?

2 个答案:

答案 0 :(得分:1)

答案是否定的。我得到的结果是因为会话在代码中的其他地方被破坏了,因此我总是将isset($ _ SESSION ['test'])视为false。

答案 1 :(得分:-1)

基本编码信息。工作流中断了。所以$_SESSION['test'] = "all set!";新人接听电话。