我在这里有一些代码导出到csv文件。我连接到数据库,看到有超过30个条目左右。但我只在csv文件中获得一个。顶部获取文件的标题,底部获取值,values数组仅返回一个数组并将其放入文件中。我不确定是什么导致了这个问题。非常感谢Anny的建议。
<?php
$FileName = "mro_export_".date("Y-m-d_H-i",time()).".csv";
$file = fopen($FileName,"w");
$sql = mysql_query("SELECT * FROM `$table` LIMIT 11");
$row = mysql_fetch_assoc($sql);
// Save headings alon
$HeadingsArray=array();
foreach($row as $name => $value){
$HeadingsArray[]=$name;
}
fputcsv($file,$HeadingsArray);
$ValuesArray=array();
foreach($row as $name => $value){
$ValuesArray[]=$value;
}
fputcsv($file,$ValuesArray);
fclose($file);
header("Location: $FileName");
?>
答案 0 :(得分:1)
您需要在循环中调用mysql_fetch_assoc
以获取所有行。
<?php
$FileName = "mro_export_".date("Y-m-d_H-i",time()).".csv";
$file = fopen($FileName,"w");
$sql = mysql_query("SELECT * FROM `$table` LIMIT 11") or die(mysql_error());
$first_line = true;
while ($row = mysql_fetch_assoc($sql)) {
if ($first_line) {
// Save headings alon
fputcsv($file, array_keys($row));
$first_line = false;
}
fputcsv($file, array_values($row));
}
fclose($file);
header("Location: $FileName");
?>