作为会话变量symfony的对象数组

时间:2015-12-03 11:16:40

标签: arrays symfony session object

我尝试在Symfony控制器中设置一个带有对象数组的可变会话。我曾尝试$session->set('expedients', serialize($expedients));$session->set('expedients', $expedients);;但是下一步,当我把变量变成另一个控制器中的新变量时,我必须做些什么才能得到原始的对象数组?我的结果是:`

object(Doctrine\ORM\PersistentCollection)#923 (9) { 
    ["snapshot":"Doctrine\ORM\PersistentCollection":private]=> array(0) { } 
    ["owner":"Doctrine\ORM\PersistentCollection":private]=> NULL 
    ["association":"Doctrine\ORM\PersistentCollection":private]=> NULL 
    ["em":"Doctrine\ORM\PersistentCollection":private]=> NULL 
    ["backRefFieldName":"Doctrine\ORM\PersistentCollection":private]=> NULL 
    ["typeClass":"Doctrine\ORM\PersistentCollection":private]=> NULL 
    ["isDirty":"Doctrine\ORM\PersistentCollection":private]=> bool(false) 
    ["collection":protected]=> object(Doctrine\Common\Collections\ArrayCollection)#925 (1) { 
    ["elements":"Doctrine\Common\Collections\ArrayCollection":private]=> array(0) { } }
    ["initialized":protected]=> bool(false)
} 

1 个答案:

答案 0 :(得分:1)

正如@Matteo所说,->toArray();可以工作(或多或少),但更好的是保存一些简单数据(作为整数),然后(在另一个控制器中)使用新数据库恢复该整数值查询。再次感谢。