我有一个包含值的动态字段,我需要用它们做数学运算。在foreach
中执行此操作的方法是什么,我是否必须在每个循环结束时保存每个值?
示例有4个字段:
- $Field1 = 2;
- $Field2 = 2;
- $Field3 = 2;
- $Field4 = 2;
Example math formula:
$sum = $Field1 * $Field2 + $Field3 - $Field4 ;
我所拥有的是我将这些动态值打印到表格中并且表格适应用户输入:
<tbody>
<?php foreach ($_POST['fields'] as $key => $value) : ?>
<tr>
<td><?php echo $value['description']; ?></td>
<td><?php echo $value['hour_rate']; ?></td>
<td><?php echo $value['hours']; ?></td>
<td><?php echo $value['fixed_cost']; ?></td>
<td><?php echo $value['discount']; ?></td>
<td?<?php echo $SUM ?> </td>
</tr>
<?php endforeach; ?>
<tr></tr>
</tbody>
我可以获得所有这些值的 TOTAL SUM (在本例中为$ SUM),但不是1比1。
$kopa+= number_format($value['hours'], 2)* number_format($value['hour_rate'], 2) + number_format($value['fixed_cost'], 2) - number_format($value['discount'], 2);
如何获得每个循环的总值?
提前致谢。
答案 0 :(得分:0)
使用您的公式和额外的foreach创建一个函数。使用foreach循环中的函数。您甚至可以遍历数组中的字段。 (如果你把它们作为数组。)
function doMath (array){
$sum = $array['field1'] * $array['field2'] + $..
return $sum;
}
foreach ( $whatever as $key => $value) {
echo doMath ($array ['withFields']);
}
简单示例