ZendFramework中使用session
程序员文章站
2024-03-20 13:21:40
...
[参看ZendFramework官方文档]
(1)开启全局会话,并设置session
<?php
require_once 'Zend/Session.php';
require_once 'Zend/Session/Namespace.php';
Zend_Session::start();
$userProfileNamespace = new Zend_Session_Namespace('userProfileNamespace');
$userProfileNamespace->name='username';
$userProfileNamespace->setExpirationSeconds(60, 'name'); // session有效期1分钟
$s->setExpirationHops(1); // 1次访问后,会话过期
// 标记会话设置为只读锁定
$userProfileNamespace->lock();
?>
注意,不能使用不要直接使用PHP的session_start()函数。如果你直接使用session_start(),之后再使用Zend_Session_Namespace,那么Zend_Session::start()会抛出("会话已经开始")的异常。如果你在使用Zend_Session_Namespace或使用Zend_Session::start()后调用session_start(),那么会产生一个E_NOTICE级别的错误,且该调用将会被忽略。
(2)使用(1)中的name
<?php
$userProfileNamespace = new Zend_Session_Namespace('userProfileNamespace', true); // 限制命名空间访问单一实例,不要忘了true
if (isset($userProfileNamespace->name)) {
$username = $userProfileNamespace->name;
}
?>
(3)若在限定时间内访问该值,只能访问1次;若超过限定不访问该值,将会自动失效。
转载于:https://my.oschina.net/wzwitblog/blog/98976
下一篇: lua基础2.表