gpt4 book ai didi

php - propel 的 toArray() 函数何时返回引用对象或仅返回顶层的规则是什么?

转载 作者:可可西里 更新时间:2023-11-01 07:35:35 25 4
gpt4 key购买 nike

关于使用 toArray() 时添加到数组中的内容,我似乎无法确定确切的经验法则,以至于如果我要执行以下操作:

$sheep = SheepQuery::create()->find();
foreach ($sheep as $sheepii) {
$sheepii->getShepherd();
}
return $sheep->toArray();

或它的一些变体,有时我似乎从羊表它们与牧羊人的子数组中得到结果,但有时它似乎不包括它,所以我必须做一些事情,比如在循环时将值添加到新数组。

任何人都可以指出(解释链接)为什么会发生这种情况及其背后的规则,这样我就不会盲目猜测,如果有更好的方法来做同样的事情,我愿意接受建议。

最佳答案

通常,如果您希望关系位于 toArray() 中,您需要获取它在初始查询中进行连接。

这将只返回对象 Sheep 的信息:

$sheep = SheepQuery::create()
->find();
$sheep->toArray();

这将返回对象Sheep 的信息它们与Shepherd 的关系(如果有的话):

$sheep = SheepQuery::create()
->find()
->joinWith('Shepherd');
$sheep->toArray();

这是一篇关于 Getting To Know Propel 1.5: When You Really Need Arrays 的好博文.

关于php - propel 的 toArray() 函数何时返回引用对象或仅返回顶层的规则是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13309603/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com