PHP 类中无法获取 $_SESSION 变量:为什么 cURL 请求无法获取会话变量?

php 类中无法获取 $_session 变量:为什么 curl 请求无法获取会话变量?

php 类中无法获取 $_session 变量

在编写 php 类时,遇到这样的问题:

class CCC {
  public function aaa() {
      return $_SESSION['rrr']; // 返回空值
  }

  public function abc() {
      $_SESSION['rrr'] = 123;
      return $_SESSION['rrr']; // 返回 123
  }
}

假设执行了方法 abc(),设置了 $_session['rrr'] 为 123,随后执行了方法 aaa(),但 aaa() 无法获取到值为 123 的 $_session['rrr']。

解决方案:

当使用 curl 等工具进行测试时,会出现上述问题,因为 curl 不会自动处理会话 cookie

解决方法是手动抓取会话 cookie 并将其添加到后续请求中。可以通过以下步骤实现:

  1. 执行方法 abc(),获取会话 cookie
  2. 在执行方法 aaa() 之前,将会话 cookie 添加到请求中。

以上就是PHP 类中无法获取 $_SESSION 变量:为什么 cURL 请求无法获取会话变量?的详细内容,更多请关注其它相关文章!