我正在使用 Propel 2。我正在通过关系为对象补水,如下所示:
$return = OrderQuery::create()
->joinWith('Customer')
->joinWith('Status')
->find()
->toArray(TableMap::TYPE_PHPNAME, true, [], true);
生成的 Array 看起来像这样:
{
"Id": 1,
"CustomerId": 1,
"StatusId": 1,
"Initiated": "2016-01-01T01:01:01+00:00",
"Customer": {
"Id": 1,
"Forname": "Test",
"Surname": "Smith",
"Orders": [
"*RECURSION*"
]
}
"Status": {
"Id": 1,
"Title": "title 1",
"Priority": 1,
"Orders": [
"*RECURSION*"
]
},
}
我想删除值所在的字段*RECURSION*
。我尝试使用$alreadyDumpedObjects
(3rd) 参数,toArray()
但这似乎没有帮助。我也可以通过unset()
调用进行某种形式的数组行走,但我希望有更好的方法,也许使用格式化程序或其他东西?
对于加分,我很想删除定义外键关系的列。例如,CustomerId
会去,但Customer
会留下。