【发布时间】:2011-09-08 12:37:40
【问题描述】:
我已经了解 CI 处理会话的方式与原生会话不同,我觉得将所有数据存储在 cookie(?) 中有点不安全,这与 PHP 的原生会话只存储会话 ID(?) 不同。所以我决定使用没有 CI native_session 库的本地会话。
现在,我知道 CI 中的输入类使用如下的真/假语句验证 Isset:
if ($this->input->post('something'))
这会导致 Isset 函数无法工作(它会给出错误)。但是,我想使用 Isset 函数检查我的本地会话,那么我该怎么做呢?我试过了
if (isset($_SESSION['keyHere']))
这给了我一个错误。
所以总结一下:我想在我的会话数组上使用 Isset,就像我使用的感觉一样
if ($_SESSION['keyHere'])
没有 Isset 可能是“危险/愚蠢”。
另外,作为最后一个问题,我很好奇您认为哪种会话处理最安全? CI 的 Session Class 还是 PHP 对服务器端存储的原生处理等?我非常希望在会话方面尽可能安全,无论这是否意味着我必须编写更长的代码。
【问题讨论】:
标签: session codeigniter isset