我正在从文件中读取数据并显示如下代码的数组:
if (($fp = fopen("test.txt", "r")) !== FALSE) {
$count = 0;
while(($row = fgetcsv($fp)) !== FALSE)
{
$row = explode("|",$row[0]);
foreach($row as &$el)
{
$el=trim($el);
}
$count++;
$tot = array_sum(array_column($row,2));
echo "<pre>";print_r($row);
if($count>3)
{
break;
}
echo "Coumt :".$tot;
}
echo "Coumt :".$tot;
fclose($fp);
}
Test.txt文件数据:
005-4410040 |BIRM| 0
005-4410040 |CHI |
450 005-4410040 |CIN | 144
我想要数组的第二个索引的总和,它意味着320 + 450 + 144
在单独的变量中。
我怎样才能做到这一点?已经尝试过array_column但它无法正常工作。
更新我尝试的内容:
$sum = array_sum(array_column($row,$row['2']));
答案 0 :(得分:1)
您正在调用错误的序列
$arr=array(array
(
0 => "005-4410040",
1 => "BIRM",
2 => 320
),
array
(
0 => "005-4410040",
1 => "CHI",
2 => 450
),
array
(
0 => "005-4410040",
1 => "CIN",
2 => 144
));
echo (array_sum(array_column($arr, 2)));