0

让我们在 symfony2 命令中考虑如下代码。我使用这个虚拟代码只是为了测试我的场景:

$em = $this->getContainer()->get("doctrine")->getManager();

$user = $em->getRepository('FOSUserBundle:User')->findOneBy(array('username' => 'admin'));

do
{
    echo $user->getFirstname(); // How to force getFirstname to fetch the updated value?
    sleep(3);
}
while(true);

我的问题是为什么如果我更改Firstname数据库中的用户,echo仍然会显示旧的Firstname,我必须重新启动脚本才能显示新的Firstname.

如何强制$user->getFirstname();获取和获取更新的数据?

4

1 回答 1

2

使用相同的代码,假设您仍然有实体管理器$em试试这个

$em->refresh($user)
于 2013-06-02T07:04:14.133 回答