use*_*643 1 php file-upload laravel-4
Laravel基本上具有以下input
类型的功能file
.
// Determine if a file was uploaded
Input::hasFile('filename');
// Access file properties
Input::file('name')->getRealPath();
Input::file('name')->getClientOriginalName();
Input::file('name')->getClientOriginalExtension();
Input::file('name')->getSize();
Input::file('name')->getMimeType();
Run Code Online (Sandbox Code Playgroud)
如果我getClientOriginalExtension
用来找到正确的图像扩展名,getSize
限制文件上传大小和getMimeType
检查图像的mimetype.
我安全吗?并且可以对功能有信心,它不会被黑客以任何方式利用.
考虑到一个事实,我将只上传图像.
http://php.w3clan.com/tutorial/47/form-handling-secure-uploading
$rule = [ 'name' => 'image' ];
对我来说似乎很安全.
如果您只打算上传图片,可以这样做:
$rules [
...
'file' => 'required|image' // Assuming it's required, otherwise leave that out
]
Run Code Online (Sandbox Code Playgroud)
请参阅图像验证规则
如果要进一步限制允许哪些扩展,可以指定具有允许扩展名的阵列,然后检查Input::file('file')->getClientOriginalExtension()
它.虽然这可能是欺骗性的,但最好指定允许哪些mime类型.
例如,如果您只想允许.png和.gif文件,则使用:
$allowedMimes = [
'image/gif',
'image/png'
];
Run Code Online (Sandbox Code Playgroud)
然后检查使用 ->getMimeType()
归档时间: |
|
查看次数: |
5363 次 |
最近记录: |