【发布时间】:2013-02-11 09:22:32
【问题描述】:
请给我以下数组:
array(3) {
[0]=>
array(2) {
[0]=>
string(6) "lkjhgj"
[1]=>
string(16) "jhgjhg@jhgjj.com"
}
[1]=>
array(2) {
[0]=>
string(5) "hgjk,"
[1]=>
string(18) "kjhgfghj@dgdfg.com"
}
[2]=>
array(2) {
[0]=>
string(9) "dddd ffff"
[1]=>
string(13) "dddd@gmail.fr"
}
}
我想把它放到一个csv文件中,所以我试过了:
$fichier = 'file.csv';
$fp = fopen($fichier, 'w');
foreach ($list as $fields)
{
fputcsv($fp, $fields);
}
fclose($fp);
header( 'Content-Type: text/csv' );
header( 'Content-Disposition: attachment;filename='.$fichier);
但是当我下载文件时发现它是空的!
请掌握任何想法?提前致谢
PS : 权限为 777
【问题讨论】:
-
您的代码示例中的
$list来自哪里?里面有什么? -
我没有看到任何代码实际上将文件作为响应的一部分返回!关闭文件后,必须重新打开它才能发送。此外,我在您的代码中没有看到任何错误检查,fopen、fputcsv 和其他文件操作可能会失败。你需要检查他们没有返回 FALSE
-
使用
$fp= fopen('php://output', 'w');而不是$fp = fopen($fichier, 'w');.. 看下面我的回答