我有以下$输入:
elements: array:2 [
0 => Tournament {
id: 1
amountStaking: Price {
value: 2500
currency: "EUR"
}
}
1 => Tournament {
id: 2
amountStaking: Price {
value: 2500
currency: "EUR"
}
}
]
我想要实现的是一个函数,它将返回一个对象或false
,取决于"相等"每个$amountStaking
的{{1}}属性。在之前的输入中,它应该返回" common"价格对象:
Tournament
但如果其中一个Price {
value: 2500
currency: "EUR"
}
值为" USD"例如,它应该返回$currency
。
答案 0 :(得分:1)
ObjectContext.Translate<T>()
您遍历数组,直到一个条目与前一个条目不匹配。你立即返回false。如果它只是返回最后一个对象。
也许你应该
$last = null;
foreach ($elements as $e) {
if ($last === null) {
$last = e->amountStaking;
continue;
}
if ($last->value != $e->value || $last->currence != $e->currency) {
return false;
}
$last = e->amountStaking;
}
return $last;
使其成为一个新对象,以防您以后想要修改它。
根据要求&#34;价格不可知&#34;:
return clone $last;