Session Zend_Auth_Storage_会话序列化对象属性

Session Zend_Auth_Storage_会话序列化对象属性,session,serialization,storage,authentication,zend-framework,Session,Serialization,Storage,Authentication,Zend Framework,我正在Zend_Auth_Storage_会话中将用户对象存储为有效身份验证上的数组元素 $authSession = new Zend_Auth_Storage_Session(); $authSession->write(array('user' => $user)); 当我阅读Zend_Auth_Storage_Session时,users lastLogin属性(会话写入时的DateTime实例)是字符串。cbaby,我不是说这是解决方案,但它对我来说很好,因为我可以正

我正在Zend_Auth_Storage_会话中将用户对象存储为有效身份验证上的数组元素

 $authSession = new Zend_Auth_Storage_Session();
 $authSession->write(array('user' => $user));

当我阅读Zend_Auth_Storage_Session时,users lastLogin属性(会话写入时的DateTime实例)是字符串。

cbaby,我不是说这是解决方案,但它对我来说很好,因为我可以正常访问“lastLogin”。也许别的什么地方出了问题。确保您正确设置了日期

$user = new stdClass();
$user->name = 'Mary';
$user->lastLogin= new DateTime(); 

$authSession = new Zend_Auth_Storage_Session();
$authSession->write(array('user' => $user));

$read = $authSession->read();
echo $read['user']->lastLogin->format('Y-m-d');
echo '<br>' . $read['user']->lastLogin->getTimezone()->getName();
$user=new stdClass();
$user->name='Mary';
$user->lastLogin=new DateTime();
$authSession=new Zend_Auth_Storage_Session();
$authSession->write(数组('user'=>$user));
$read=$authSession->read();
echo$read['user']->lastLogin->format('Y-m-d');
回音“
”$读取['user']->lastLogin->getTimezone()->getName();
cbaby,我不是说这是解决方案,但它对我来说很好,因为我可以正常访问“lastLogin”。也许别的什么地方出了问题。确保您正确设置了日期

$user = new stdClass();
$user->name = 'Mary';
$user->lastLogin= new DateTime(); 

$authSession = new Zend_Auth_Storage_Session();
$authSession->write(array('user' => $user));

$read = $authSession->read();
echo $read['user']->lastLogin->format('Y-m-d');
echo '<br>' . $read['user']->lastLogin->getTimezone()->getName();
$user=new stdClass();
$user->name='Mary';
$user->lastLogin=new DateTime();
$authSession=new Zend_Auth_Storage_Session();
$authSession->write(数组('user'=>$user));
$read=$authSession->read();
echo$read['user']->lastLogin->format('Y-m-d');
回音“
”$读取['user']->lastLogin->getTimezone()->getName();
我不清楚您的要求。对不起。我得到了自定义类型User的对象。它的一个属性是'lastLogin',它的类型是DateTime(php api)。我将用户写入Zend_Auth_存储会话。当我从会话中读取用户时,“lastLogin”是DateTime对象的字符串表示形式。我想这是因为序列化。我想知道的是如何绕过它,而不必每次从会话读取用户时都实例化新的DateTime。从存储读取后,“lastLogin”字符串值是什么样子?@Tobi它是写入的DateTime对象的字符串表示形式,例如“2011-12-04 03:14:32”。我不清楚你问什么。对不起。我得到了自定义类型User的对象。它的一个属性是'lastLogin',它的类型是DateTime(php api)。我将用户写入Zend_Auth_存储会话。当我从会话中读取用户时,“lastLogin”是DateTime对象的字符串表示形式。我想这是因为序列化。我想知道的是如何绕过它,而不必每次从会话读取用户时都实例化新的DateTime。从存储读取后,“lastLogin”字符串值是什么样子?@Tobi它是写入的DateTime对象的字符串表示形式,例如“2011-12-04 03:14:32”。问题是在用户的登录时间写入会话后更新该时间,以便我可以在db中存储新值。不知道我可以通过引用更新已写入会话的对象。问题是在写入会话后更新用户的登录时间,以便在db中存储新值。我不知道我可以通过引用更新已经写入会话的对象。