我使用以下代码将mysqli结果集写入PHP中的CSV文件
$result = mysqli_query($con, 'SELECT * FROM table');
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
$fp = fopen('file.csv', 'w');
foreach ($row as $val) {
fputcsv($fp, $val);
}
根据我的理解,应该为每一行产生一个逗号分隔行。 但是,CSV文件的内容由一个没有换行符的长字符串组成。 知道如何获得每一行的换行符吗? 感谢。
fclose($fp);
答案 0 :(得分:0)
您需要循环到最后一条记录并在csv中添加每条记录。将您的代码更改为:
$result = mysqli_query($con, 'SELECT * FROM table');
$fp = fopen('file.csv', 'w');
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
fputcsv($fp, $row);
}
fclose($fp);