【发布时间】:2011-01-26 00:29:06
【问题描述】:
用例:为了处理 Web 应用程序的访问权限,而不必在每次显示页面时检查它们,我想出了这个方案: 当管理用户授予或删除应用程序用户的访问权限时,请检查当前是否有与他关联的会话。案例是,改变会话数据。
php5 是否提供这样的会话存储库?
【问题讨论】:
标签: php session session-variables
用例:为了处理 Web 应用程序的访问权限,而不必在每次显示页面时检查它们,我想出了这个方案: 当管理用户授予或删除应用程序用户的访问权限时,请检查当前是否有与他关联的会话。案例是,改变会话数据。
php5 是否提供这样的会话存储库?
【问题讨论】:
标签: php session session-variables
为什么需要这样做?对我来说,这听起来很像过早的优化。此外,按照您描述的方式,会话结束时用户的权限将丢失。
PHP 会话数据默认存储在临时目录中的文件中。如果你真的想这样做,你可以实现你自己的会话库(开始here)。
如果您确实有理由担心每次请求都访问数据库的性能问题,那么也许您可以在有限的时间内缓存权限。
【讨论】:
不,每个会话都通过 PHP/apache 链接到用户,因此您不妨将权限写入数据库。为了使其更快,最好使用共享缓存(如 memcached)来实现。
【讨论】: