通过php验证没有扩展名的xls文件
Posted
技术标签:
【中文标题】通过php验证没有扩展名的xls文件【英文标题】:validate xls file without extension through php 【发布时间】:2016-10-26 18:10:12 【问题描述】:我有一个用于输入文件的 html 表单,并且 php 通过扩展名 .xls 验证输入的文件是否是 xls 文件! 现在,如果用户将图像或脚本文件重命名为 abc.jpeg 为 abc.xsl,则该文件不会被 php 代码验证!无论扩展名如何,我如何验证它是否真的是一个 xls 文件? 用于验证的php代码
if(in_array($file_ext,$expensions)=== false)
echo "extension not allowed, please choose a .xls file.";
exit();
【问题讨论】:
如果您希望这样,您必须根据格式读取文件,然后您必须进行验证。表示如果 xls 文件然后检查内容,如果它是图像检查像素,如果 doc 文件获取它的内容并验证。 ***.com/questions/23287341/…? @MisterHenson 谢谢这个链接帮助很大 【参考方案1】:建议您使用返回文件的 MIME 内容类型的mime_content_type
,而不是使用文件扩展名。查看链接http://php.net/manual/en/function.mime-content-type.php了解更多信息。
您可以准备一个包含所有允许的 MIME 类型/文件类型的数组,然后使用函数 mime_content_type 检查您上传文件的 MIME 内容类型。
echo mime_content_type('test.php'); // 返回文本/纯文本
这将帮助您的代码在跨平台(其他操作系统兼容性)问题中验证文件扩展名/文件类型。
【讨论】:
以上是关于通过php验证没有扩展名的xls文件的主要内容,如果未能解决你的问题,请参考以下文章