PHP fputcsv 不需要的附加最后一行
PHP fputcsv unwanted additional last line
我有以下代码将数组结果导出到 PHP 中的 csv:
$file = fopen('php://output', 'w');
$firstLineKeys = false;
foreach ($result as $line) {
if (empty($firstLineKeys))
{
$firstLineKeys = array_keys($line);
fputcsv($file, $firstLineKeys);
$firstLineKeys = array_flip($firstLineKeys);
}
fputcsv($file, $line, ',');
}
fclose($file);
但是,我得到的 csv 文件的最后一行是 "Headers Sent",这使得文件最后有点难看。
如何删除最后一行或不显示消息 "Headers Sent"?
必须添加 exit();在末尾。这删除了包含 "Headers Sent" 文本的最后一行。
解决方法如下:
$file = fopen('php://output', 'w');
$firstLineKeys = false;
foreach ($result as $line) {
if (empty($firstLineKeys))
{
$firstLineKeys = array_keys($line);
fputcsv($file, $firstLineKeys);
$firstLineKeys = array_flip($firstLineKeys);
}
fputcsv($file, $line, ',');
}
fclose($file);
exit();
我有以下代码将数组结果导出到 PHP 中的 csv:
$file = fopen('php://output', 'w');
$firstLineKeys = false;
foreach ($result as $line) {
if (empty($firstLineKeys))
{
$firstLineKeys = array_keys($line);
fputcsv($file, $firstLineKeys);
$firstLineKeys = array_flip($firstLineKeys);
}
fputcsv($file, $line, ',');
}
fclose($file);
但是,我得到的 csv 文件的最后一行是 "Headers Sent",这使得文件最后有点难看。
如何删除最后一行或不显示消息 "Headers Sent"?
必须添加 exit();在末尾。这删除了包含 "Headers Sent" 文本的最后一行。
解决方法如下:
$file = fopen('php://output', 'w');
$firstLineKeys = false;
foreach ($result as $line) {
if (empty($firstLineKeys))
{
$firstLineKeys = array_keys($line);
fputcsv($file, $firstLineKeys);
$firstLineKeys = array_flip($firstLineKeys);
}
fputcsv($file, $line, ',');
}
fclose($file);
exit();