使用php对csv文件中的行数据求和

使用php对csv文件中的行数据求和,php,arrays,csv,fgetcsv,Php,Arrays,Csv,Fgetcsv,我试图使用php对csv文件中的一行数据(数字)求和,以显示总数。这是我的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, ",")) !==

我试图使用php对csv文件中的一行数据(数字)求和,以显示总数。这是我的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);
  }
}
我的输出基本上是:000000000000000000000000000000000


我似乎不明白为什么?有人能帮我吗?

你可以这样试试

<?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];
}

看起来应该对列求和,而不是对行求和。如果使用空数组覆盖数据:
$data=array();回波阵列和($数据)嘿,萨西,谢谢你的帮助。但是什么都没有输出。然而,当我删除了!from:
if(!$csv[0])
输出是整个数字列表加上末尾的总数。不过,我只需要显示最后的总和,而不是全部。如果问题出在
If(!$csv[0])
上,那么请尝试我的更新代码,如果您可以在loopHi Sasi中回显数组的总和,非常感谢!这解决了我的问题!谢谢你的帮助!
<?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";