【问题标题】:CodeIgniter. Can I use PHP's native session functions and $_SESSION?代码点火器。我可以使用 PHP 的本地会话函数和 $_SESSION 吗?
【发布时间】:2012-09-20 12:23:28
【问题描述】:

我刚刚开始使用 CodeIgniter 2。我抗拒一个框架这么久,但最终意识到我的类、函数、配置文件的混搭集合是跨多个项目保持更新的噩梦。

我在查看 CI 的 session class 并注意到以下内容:

会话数组的一个有用方面是您可以向其中添加自己的数据,并将其存储在用户的 cookie 中。为什么要这样做?

啊啊啊!由于很多原因,这对我来说听起来很错误。这是我的问题...
使用 CodeIgniter 时是否可以使用 PHP 的原生会话函数并访问$_SESSION
或者 CI 中有什么东西会阻止我这样做?任何拒绝直接访问超级全局变量或其他东西的安全功能?

I found this 但它看起来像是为 CI 1.5 设计的,我不确定它的更新程度。我想我更愿意为 PHP 的本机会话使用我自己的包装器——如果我真的可以使用 PHP 的本机会话的话。

我还应该补充一点,我也不希望将会话存储在数据库中,以防出现连接/延迟问题。

【问题讨论】:

  • 据我了解,没有什么可以阻止您在 CI 应用程序中使用 $_SESSION...
  • 可以用吗?你为什么不尝试?
  • 我正在使用 CI 2.1.3 的链接本机会话库,工作正常。
  • @ZathrusWriter 我有几个问题没有得到满意的答案。我觉得接受一个实际上没有回答我的问题的答案是不合适的。我宁愿把它留给别人来完成。这里也有一些不错的 cmets,但我不能接受评论作为答案。
  • @complex857 非常感谢您提供的信息!

标签: php codeigniter session


【解决方案1】:

http://codeigniter.com/user_guide/libraries/sessions.html

Codeigniter 会话类创建它自己的会话数据。所以它与 PHP 的本机会话无关,是的,您可以使用它们。

一个好处是您可以轻松地将会话数据保存在数据库中。

【讨论】:

    【解决方案2】:

    config.php里面有一个默认使用cookies的选项:

    $config['sess_driver'] = 'cookie';
    

    说明

    'sess_driver'= the driver to load: cookie (Classic), native (PHP sessions),
    

    所以看起来您可以将其更改为使用本机 PHP 会话。

    【讨论】:

    猜你喜欢
    • 2015-06-18
    • 2012-11-01
    • 1970-01-01
    • 2016-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多