我有一个动态数组对象,它存储这样的值。
foreach($salesReturn as $salesReturns)
{
echo '<pre>';
print_r($salesReturns);
}
O / P:-
stdClass对象
(
[date] => 2
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 228.95
)
stdClass对象
(
[date] => 3
[tax1] => 0.00
[tax2] => 0.00
[ totalReturn] => 842.55
)
stdClass对象
(
[date] => 4
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 129.33 <
)
但是我想像这样在数组对象中存储一个值。
stdClass对象
(
[date] => 1
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 0.00
)
stdClass对象
(
[date] => 2
[tax1] => 0.00
[tax2] => 0.00
[ totalReturn] => 228.95
)
stdClass对象
(
[date] => 3
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 842.55
)
stdClass对象
(
[date] => 4
[tax1] => 0.00
[ tax2] => 0.00
[totalReturn] => 129.33
)
stdClass对象
(
[date] => 5
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 0.00
)
stdClass对象
(
[date] => 6
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 0.00
)
stdClass对象
(
[date] => 7
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 0.00
)
stdClass对象
(
[date] => 8
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 0.00
)
stdClass对象
(
[date] => 9
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 0.00
)
stdClass对象
(
[date] => 10
[tax1] => 0。00
[tax2] => 0.00
[totalReturn] => 0.00
)
stdClass对象
(
[date] => 11
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 0.00
)
stdClass对象
(
[date] => 12
[tax1] => 0.00
[tax2] => 0.00
[totalReturn] => 0.00
)
您想要用“空”默认对象填充数组吗?
$defaults = [];
foreach (range(1, 12) as $m) {
// using non numerical index to avoid reindexing behaviours...
$defaults['m' . $m] = new stdClass;
...
// init default obj
$defaults['m' . $m]->date = $m;
$defaults['m' . $m]->otherFields = 0;
//add all fields
}
下个月也使用相同的索引格式按月对当前数据数组进行索引。
$indexedSalesReturn = [];
foreach ($salesReturn as $obj) {
$indexedSalesReturn['m' . $obj->date] = $obj;
}
然后将默认值附加到当前数据。
$indexedSalesReturn += $defaults;
这不会替换现有索引,但会添加不存在的索引。
可选:ksort数组和array_values
编辑:您应该针对此工作数组(伪代码)
[
'm1' => stdClass { date => 1, ...},
'm2' => stdClass { date => 2, ...},
...
]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句