【问题标题】:What exactly is the PHP function session_module_name for?PHP 函数 session_module_name 到底是做什么用的?
【发布时间】:2011-12-07 13:20:43
【问题描述】:

PHP Session 相关函数有这个:session_module_name。文档只说:

session_module_name — 获取和/或设置当前会话模块

没有关于什么是会话模块、有哪些可用选项以及何时使用。

这个函数的目的是什么?

【问题讨论】:

    标签: php session


    【解决方案1】:

    session_module_name 定义了会话的存储方式。您可以将它与 session_set_save_handler 结合使用来手动处理会话,例如如果您想从数据库保存/加载会话。快速搜索显示至少有 3 个模块

    <?php
      session_module_name("files");  // ASCII files
      session_module_name("mm");     // Shared memory
      session_module_name("user");   // Custom session backend
    ?>
    

    也许还有更多。如果 session_module_name 文档条目能更有帮助就更好了。

    【讨论】:

      【解决方案2】:

      会话模块也称为“保存处理程序”。这些是 PHP 用来存储会话数据的机制。

      除了使用session_module_name(),您还可以通过PHP7 的新session_start() 参数或php.ini 进行配置。这两种情况下使用的密钥分别是save_handlersession.save_handler。如前所述,默认存储是文件系统。

      除了默认的“文件”存储之外,个别扩展可以注册自己的 save_handlers - 例如 Memcache。通过参考您的phpinfo() 输出,可以在每个安装的基础上获取已注册的处理程序。 (manual source)

      可以使用session_set_save_handler() 创建自定义会话处理程序。

      【讨论】:

        猜你喜欢
        • 2019-10-12
        • 2017-12-08
        • 2013-02-05
        • 1970-01-01
        • 1970-01-01
        • 2016-04-27
        • 1970-01-01
        • 2015-08-06
        • 2013-09-02
        相关资源
        最近更新 更多