我在计算数组的总值时遇到了麻烦。我不知道如何访问它。贝娄是我的代码:
<?php
if(file_exists('data.txt')){
$result= file('data.txt');
foreach ($result as $value) {
$columns= explode('!', $value);
echo '<tr>
<td>'.$columns[0].'</td>
<td>'.$columns[1].'</td>
<td>'.$columns[2].' лв.</td>
<td>'.$type[trim($columns[3])].'</td>
</tr>';
$cost=(float)$columns[2];
$totalCost=array($cost);
var_dump($totalCost);
}
}
?>
var_dump($ cost)导致:
float(2.5) float(35) float(2.5) float(20)
和var_dump($ totalCost):
array(1) { [0]=> float(2.5) } array(1) { [0]=> float(35) } array(1) { [0]=> float(2.5) } array(1) { [0]=> float(20) }
我需要在$ cost内获得浮动的总价值。任何帮助将不胜感激。
答案 0 :(得分:3)
继续将成本添加到数组中并计算循环迭代后的总和:
$costs = array();
foreach ($result as $value) {
$columns= explode('!', $value);
echo '<tr>
<td>'.$columns[0].'</td>
<td>'.$columns[1].'</td>
<td>'.$columns[2].' лв.</td>
<td>'.$type[trim($columns[3])].'</td>
</tr>';
$costs[] = (float) $columns[2];
}
$totalCost = array_sum($costs);
答案 1 :(得分:1)
您的代码应为
<?php
if(file_exists('data.txt')){
$result= file('data.txt');
foreach ($result as $value) {
$columns= explode('!', $value);
echo '<tr>
<td>'.$columns[0].'</td>
<td>'.$columns[1].'</td>
<td>'.$columns[2].' лв.</td>
<td>'.$type[trim($columns[3])].'</td>
</tr>';
$totalCost +=(float)$columns[2];
}
echo $totalCost; // This will give you total value
}
?>