如何从数组创建实体对象?

时间:2013-08-21 22:14:33

标签: php orm doctrine-orm

我想将实体的数据存储在会话中,以便应用程序不必一直从数据库中获取它。但是我仍然希望能够将它作为一个实体使用,那么我该如何实现呢?例如,如果我有这个:

$user = $session->get('user'); // array('id' => 123, 'username' => 'Foo');

如何为用户实体提供水合作用?我正在寻找这样的事情:

$userEntity = $em->createFromArray($user);

// Later on, I should be able to do stuff like this:

$userEntity->modifySomething();
$em->flush();

有什么想法吗?

1 个答案:

答案 0 :(得分:-1)

首次登录时加载用户实体,并将其序列化保存在会话中。

$session->set('user', serialize($user));

当您需要访问用户实体时,只需执行

即可
$userEntity = unserialize($session->get('user'));

如果实体被持久化,请记住在会话中更新它