【问题标题】:What's the difference in session manager and session container in zend, which one is better?zend中的会话管理器和会话容器有什么区别,哪个更好?
【发布时间】:2016-05-17 15:10:19
【问题描述】:

在我的应用程序中,我想使用会话和 cookie。在阅读有关会话的信息时,我了解到我可以通过两种方式实现会话,一种是通过会话管理,一种是使用容器,使用容器似乎很容易。我想知道哪个更好,或者两者都一样,我错过了一些东西。我想同时使用 session 和 cookie,任何人都可以有一些源代码或编码示例,其中 session 和 cookie 都已使用?我不知道如何发送 cookie 来获取会话值以及如何在我的视图文件(js 和 phtml)中使用这些值。以下是 zend 文档中引用的会话管理器代码:

return array(
    'session' => array(
        'config' => array(
            'class' => 'Zend\Session\Config\SessionConfig',
            'options' => array(
                'name' => 'myapp',
            ),
        ),
        'storage' => 'Zend\Session\Storage\SessionArrayStorage',
        'validators' => array(
            'Zend\Session\Validator\RemoteAddr',
            'Zend\Session\Validator\HttpUserAgent',
        ),
    ),
);

我需要将此代码放在我的 application.config.php 文件中吗?

【问题讨论】:

    标签: php session cookies zend-framework2


    【解决方案1】:

    用于处理会话数据的会话容器。

    用于处理会话逻辑的会话管理器(例如启动/关闭)。

    我需要将此代码放在我的 application.config.php 文件中吗?

    是的,在ZF2 docs 写道:

    以下说明了如何通过在本地或全局配置中设置选项来配置会话管理器:

    【讨论】:

    • 感谢您的澄清,对 cookie 有何看法?
    • ZF 中的 Cookie 可从 Request 读取到示例(来自控制器) - $this->getRequest()->getCookie()->cookieName。使用Response写作:$this->getResponse()->getCookie()->cookieName = $cookieValue
    • 此操作必须在控制器中进行,而不是在视图中。视图不应与请求和响应一起使用。
    • 要访问js文件中的session变量,我需要把这些变量传给view,然后在phtml文件中创建一些js变量,以后在js文件中使用,对吗?
    • 你有任何应用程序实现了会话和cookies吗?因为它很容易从代码中理解。
    猜你喜欢
    • 2016-10-19
    • 2011-03-20
    • 2018-08-05
    • 1970-01-01
    • 1970-01-01
    • 2023-01-16
    • 1970-01-01
    • 2011-09-14
    • 2011-05-27
    相关资源
    最近更新 更多