我尝试在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)
}
答案 0 :(得分:1)
正如@Matteo所说,->toArray();
可以工作(或多或少),但更好的是保存一些简单数据(作为整数),然后(在另一个控制器中)使用新数据库恢复该整数值查询。再次感谢。