使用php汇总csv文件中的行数据

时间:2015-03-23 14:26:21

标签: php arrays csv fgetcsv

我试图从csv文件中汇总一行数据(数字)以使用php显示总数。这是我的csv文件:

A

0.01
0.1
0.02
0.01
0.02
0.01
0.02

基本上它延续了。 A基本上是excel中的第一行字母。

基本上它延续了。 我试图在PHP中总结一行。

到目前为止,这是我的代码:

if (($handle = fopen("file.csv", "r")) !== FALSE) {
  while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
   $data = array();

   echo array_sum($data);
  }
}

我的输出基本上是:0000000000000000000000000000000000000000000000000000000

我似乎无法弄清楚为什么?有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

你可以尝试这样

<?php
$file = fopen("file.csv","r");
$sum = 0;
while(!feof($file)) {
    $csv = fgetcsv($file,1024);
    if(!$csv[0]){
            print $sum."\n";
    }
    $sum = $sum + $csv[0];
}

或在while循环之前声明数组

<?php
$file = fopen("file.csv","r");
$sum = array();
while(!feof($file)) {
    $csv = fgetcsv($file,1024);
    array_push($sum,$csv[0]);
}
echo array_sum($sum)."\n";