我有奇怪的事情,它可能很简单,但我无法找到解决方案。以下是代码的一部分:
$counter = 0;
$autoload_view_instace = new Logic_InvoiceCostData;
$sub_view_cost = array();
foreach($invoceCostData as $data)
{
$counter++;
$parm = $autoload_view_instace->edit_view_data($autoload_view, $data, $counter);
array_push( $sub_view_cost, $parm);
}
循环调用edit_view_data
方法,该方法返回带有一些值的对象。该对象应在每次迭代中放置在数组的末尾,而不更改先前添加的对象的值。但是在每次迭代之后,数组中的所有对象都具有与新添加的对象相同的值。
答案 0 :(得分:0)
显然array_push语法是正确的...它应该工作..但是你可以使用相同的东西。 $ sub_view_cost [] = $ parm;
并确保每次$ parm获得正确的值