如何在上传过程中验证图像真的是“图像”还是PDF实际上是“PDF文档”?我观察到黑客尝试上传一些带有JPG图片预览的文件,但是当我试图在编辑器中打开这个文件时,我看到了PHP代码! 。如何验证文件是laravel验证中的“真实文件”
我担心的是:
我如何可以验证文件是一个真正的文件?
进出口使用laravel框架,我像默剧验证测试,如下图所示:
$inputs = array('image'=>$request->file('file'));
$rules = array(
'image' => 'mimes:jpeg,jpg,png,gif|required|max:10000'
);
$validator = Validator::make($inputs, $rules);
if ($validator->fails()){
die('validation failed');
}else{
die('validation Passed');
}
但这种验证总是通过,如果我尝试上传无效的JPEG文件与一些PHP注入代码!
您可以查看 - > getClientOriginalExtension()原创extenstion –
@bipinpatel,但这种方法只返回已上载 – Shan
文件的扩展名https://stackoverflow.com/questions/6484307 /如何检查,如果上传文件是一个图像,没有MIME类型 – GoatHater