【问题标题】:Reading or altering $_SESSION data outside of the current session context在当前会话上下文之外读取或更改 $_SESSION 数据
【发布时间】:2011-01-26 00:29:06
【问题描述】:

用例:为了处理 Web 应用程序的访问权限,而不必在每次显示页面时检查它们,我想出了这个方案: 当管理用户授予或删除应用程序用户的访问权限时,请检查当前是否有与他关联的会话。案例是,改变会话数据。

php5 是否提供这样的会话存储库?

【问题讨论】:

    标签: php session session-variables


    【解决方案1】:

    为什么需要这样做?对我来说,这听起来很像过早的优化。此外,按照您描述的方式,会话结束时用户的权限将丢失。

    PHP 会话数据默认存储在临时目录中的文件中。如果你真的想这样做,你可以实现你自己的会话库(开始here)。

    如果您确实有理由担心每次请求都访问数据库的性能问题,那么也许您可以在有限的时间内缓存权限。

    【讨论】:

      【解决方案2】:

      不,每个会话都通过 PHP/apache 链接到用户,因此您不妨将权限写入数据库。为了使其更快,最好使用共享缓存(如 memcached)来实现。

      【讨论】:

        猜你喜欢
        • 2011-07-19
        • 2011-10-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-22
        • 1970-01-01
        相关资源
        最近更新 更多