我有下面的代码,在那里我生成随机数并尝试将它们下载为CSV文件。PHP代码下载CSV文件不起作用
如果我尝试在不同的文件时,它单独工作片断中,CSV代码,但在这段代码,它只是不工作。我确实看到了随机数字,但它不下载CSV文件。
<?php
$dataarray=array();
function convert_to_csv($input_array, $output_file_name, $delimiter)
{
$temp_memory = fopen('php://memory', 'w');
foreach ($input_array as $line)
{
fputcsv($temp_memory, $line, $delimiter);
}
fseek($temp_memory, 0);
header('Content-Type: application/csv');
header('Content-Disposition: attachement; filename="' . $output_file_name . '";');
fpassthru($temp_memory);
}
for ($i = 0; $i <= 25000; $i++)
{
$num = (rand(50,110));
array_push($dataarray,"$num");
echo "Hearbeat #" .$i . "\t\t ------ " . $num;
echo "<br>";
}
convert_to_csv($dataarray, 'data_as_csv.csv', ',');
?>
非常感谢。 1-我希望这些值出现在屏幕上,所以我需要回声,但放置它会停止文件的下载。 +在生成的文件中,值不会被逗号分隔。 – tony9099
您__必须了解只有__one__选项 - 可以下载文件或查看网页。有__NO__的方式来做这两个在PHP中。 –
如果您需要用逗号分隔的值,则@gmc表示 - 将'$ input_array'传递给'fputcsv'。 –