获取fputcsv的返回值
问题描述:
有没有人知道函数或酷招,获取返回值fputcsv
而不是将输出写入文件?获取fputcsv的返回值
我试图编码一个文件作为制表符分隔的文件,但我的客户想要在csv中编码的列之一(所以在制表符分隔文件中的csv值的1列)。不理想,我同意,但在这一点上,我只需要完成它。
谢谢!
答
从文档页面上user note无耻复制:
$buffer = fopen('php://temp', 'r+');
fputcsv($buffer, $data);
rewind($buffer);
$csv = fgets($buffer);
fclose($buffer);
// Perform any data massaging you want here
echo $csv;
所有这一切都应该很熟悉,也许除了php://temp
。
答
$output = fopen('php://output', 'w');
fputcsv($output, $line);
fclose($output);
或者尝试其他supported wrappers之一,像php://memory
如果你不希望直接输出。
接受此答案是因为它更完整。很棒!不过要注意的是,确保你在'fgets'之后'trim'来摆脱'fputcsv'添加的新行! –