我有两个包含年度结果的数组。
array A (
[a] => '150'
[b] => '200'
[c] => '300'
[d] => '1000'
[e] => '350'
[f] => '1000'
)
array B (
[a] => '500'
[b] => '400'
[d] => '1000'
[f] => '1000'
)
我需要比较构建另一个数组的两者之间的增长结果,以将其显示在 html 表中。前任:
[a] => 233%
[b] => 100%
...
我有一个数组,用于标识数组 b 上不存在的索引。数组 c = ('c', 'e');
问题是,我需要 C 行和 E 行仍然显示在表格上。但是在迭代中,我如何才能跳过具有 0 值的索引的行,避免计算 300 by 0 并改为放置消息?
您可以迭代第一个数组并检查下一个值:
$arrayA = [
'a' => '150',
'b' => '200',
'c' => '300',
'd' => '1000',
'e' => '350',
'f' => '1000',
];
$arrayB = [
'a' => '500',
'b' => '400',
'd' => '1000',
'f' => '1000',
];
$result = [];
foreach ($arrayA as $key => $value) {
if(isset($arrayB[$key])) {
$result[$key] = round($arrayB[$key] * 100 / $value, 2);
} else {
$result[$key] = 'some value when empty';
}
}
var_dump($result);
输出:
array(6) {
["a"]=>
float(333.33)
["b"]=>
float(200)
["c"]=>
string(21) "some value when empty"
["d"]=>
float(100)
["e"]=>
string(21) "some value when empty"
["f"]=>
float(100)
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句