检查上传的文件是否为CSV文件

时间:2011-08-03 08:29:14

标签: php csv

我想测试上传的文件是否为CSV文件,选择csv文件后再用此代码确认,仍然给我一条不是CSV文件的消息,请帮帮我。

if($_FILES["file"]["type"] <> "application/vnd.ms-excel"){
   die("This is not a CSV file.");
}

1 个答案:

答案 0 :(得分:1)

最简单的检查是“文件名是否以.csv结尾”。这将帮助您完成大部分工作,但有人可能会尝试使用CSV扩展程序上传其他内容。

您的下一次检查应该是文件是文本(而不是二进制文件;请注意Excel文件应该失败)。要执行此操作,请检查ascii representation of each character:除了回车,换行符和制表符之外,应该没有小于32的值。

一旦您知道该文件是文本,您就可以通过CSV parser运行该文件并查看结果是否为无意义。