header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Length: " . strlen($contents));
// Output to browser with appropriate mime type, you choose ;)
header("Content-type: text/x-csv");
header("Content-type: text/csv");
header("Content-type: application/csv");
header("Content-Disposition: attachment; filename=$filename");
echo $contents;
exit;
echo $contents;生产 我的Csv输出看起来像这样,
我也粘贴了我想要的方式
![alt text] [1]
答案 0 :(得分:1)
好的,首先要做的事情是:
除非这些样本图像是伪造的测试数据,否则现在就是它们。看起来你正在暴露医疗记录,这使你违反了HIPAA。通过文本绘制一些彻头彻尾的白色X,但留下的大部分内容不是“匿名化”。
我希望它测试数据,你有“testingPatientName”作为标题,但仍然......
第二:您输出了三种不同的Content-type标头。如果有人递给你一个汉堡包说“这是一个热狗,这是一块牛排,而且它是一块芹菜”,想想你会怎么做。你刚才拿了什么?
第三:您的代码只是强制下载(显然).csv数据的必要代码,但是您没有显示它是如何生成的。你如何建立自己的$content
?
从图片的外观来看,标题字段中有一些制表符(或其他“分隔符”),但是使用逗号作为实际数据的分隔符。请注意“James TWright III”记录如何在“我想要这样”样本中的逗号分开。如果要在.csv字段中嵌入逗号,则必须用双引号("
)包围该字段,如果该字段包含双引号,则必须加倍引号({{1} })。例如,给定:
""
变为
This is a double quote "containing" field, with a comma
<。>在.csv输出中。