Codeigniter 会话不适用于 PHP 7

新手上路,请多包涵

我在 PHP 5.6 上使用 codeigniter 版本 3.0.6 ,它工作正常。但是当我在 PHP 7.1 上运行同一个项目时,codeigniter 会话不工作。我像下面这样设置会话

$login_session = $this->session->set_userdata("user_session",$session_data);

当我打印 $login_session 时它在 PHP 7 上是空白的

原文由 hrishi 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 274
1 个回答

最近我通过将我的 php 版本从 5.6 升级到 7.1 遇到了同样的问题 我的开发环境是 XAMPP (Apache + MariaDB) 使用 php7.1.4

请按照以下步骤操作:

  1. 转到 system/libraries/Session/Session.php

  2. 通过添加 // 注释 session_start()。

  3. 向下转到第 312-315 行,那里写着 Security is king,然后注释掉以下行:

    ini_set('session.use_trans_sid', 0);
    ini_set('session.use_strict_mode', 1);
    ini_set('session.use_cookies', 1);
    ini_set('session.use_only_cookies', 1);
    ini_set('session.hash_function', 1);
    ini_set('session.hash_bits_per_character', 4);
    

4)然后转到您的主要 index.php (根 index.php )

  1. 在顶部添加一次session_start()。

这个对我有用。

原文由 Shafiq 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏