【发布时间】:2013-01-05 22:38:14
【问题描述】:
主要问题不言自明,但我将给出一些侧面示例:
我无法确定数据库,但我似乎可以使用 ServiceManager 的东西进行配置
我想为 cookie 名称使用常量,以便在发生冲突时轻松更改它们。目前,每次我想访问我的全局 config.php 文件时,我都会调用
$config = new \Zend\Config\Config(include $_SERVER['DOCUMENT_ROOT'] . '/../config.php');。许多以前的解决方案都在 Zend 1 中(例如 Zend_Registry)。这是正确的方法吗?一遍又一遍地使用它似乎有点笨拙。有没有办法利用模块的配置文件来设置模块范围的变量/常量?
除非我完全想念它,否则 Zend 2 中没有 application.ini
存储验证码公钥/私钥
我还将我的配置文件用于会话变量(与
$_SESSION[CONST_NAME]的想法相同),这使得上面的配置文件非常笨拙。对会话名称进行硬编码会更好吗?喜欢:
$container = new Zend\Session\Container('auth');
$container->offsetSet('user', $user);
... // instead of
$container = new Zend\Zession\Container($config['auth']['containername']);
$container->offsetSet($config['auth']['user'], $user);
【问题讨论】:
-
不要将会话用于此类事情,这不是会话的目的!
-
@markus-tharkun 那我应该用什么?我记得在 SO 上的一个大的“如何登录用户”(找不到确切的线程)中说要使用会话,除非我完全误解了
-
是的,没错。关联用户的一些数据完全可以存储在会话中......我的印象是它更多,但我错了。
-
令我困惑的是你有一个 $config-auth-user 字段,配置不应该包含用户信息。
标签: global-variables zend-framework2 zend-config