Fputcsv返回双精度值


fputcsv returns double values

所以目前我试图做一个数据库导出脚本,我得到的是这个:

<?php
   $con = mysqli_connect("SERVER","USER","PASSWORD","DATABASE");
   $query = mysqli_query($con,"SELECT * FROM `TABLE`;");
   unlink('testfile.csv');
   $fp = fopen("testfile.csv","w");
   fputcsv($fp,array("Col1","Col2","Col3"),";");
   while ($list = mysqli_fetch_array($query)){
     fputcsv($fp,$list,";");
  }
  fclose($fp);
?>

这似乎返回"Col1 Col1 Col2 Col2 Col3 Col3"

fputcsv($fp,array($list[0],$list[1],$list[2]),";");似乎工作良好。是否有一种方法可以避免这种解决方案,并通过原始$list数组来实现?

尝试:

$list = mysqli_fetch_array($query, MYSQLI_NUM);

这将返回数组作为一个数字数组,而不是默认的混合映射。在输出上也尝试print_r,以确保它是您所期望的。

http://uk3.php.net/manual/en/mysqli-result.fetch-array.php