如何將Laravel文件驗證用於循環內的多個文件?循環內的多個文件驗證
通常在一個單一的文件驗證,我可以做像
$validator = Validator::make($request->all(),[
'image' => 'image|max_width:1000|max_height:1000'
]);
if($validator->fails()){
//validation fails
}
但現在我想驗證多個文件在一個單一的過程,就像
//store to a variable
$file = $request->file('image');
if($file){ //if request file image exist
foreach($request->file('image') as $i){
//here, validate each file image, but it just I don't know how
}
}
現在的前端側,詳細說明在一篇文章中發送多個文件的過程。
$(document).on("change",'input[type="file"]',function(){
if($(this).val()!==""){
var files = this.files;
handleFileUpload(files);
$(this).val("");
}
});
function handleFileUpload(files)
{
//create a formData
var fd = new FormData();
//loop through e
for (var i = 0; i < files.length; i++)
{
//append each file object to the formData
fd.append('image[]', files[i]);
}
//this function is where ajax request will be process
sendFileToServer(fd);
}
,因此在後端,如果我轉儲請求,我得到這些
陣列(2){[0] =>對象(照亮\ HTTP \ UploadedFile的)#214(7 ){「test」:「Symfony \ Component \ HttpFoundation \ File \ UploadedFile」:private] => bool(false) [「originalName」:「Symfony \ Component \ HttpFoundation \ File \ UploadedFile」:private] = > string(50)「12400457_643171672489204_2452820305362127031_n.jpg」 [「mimeType」:「Symfony \ Component \ HttpFoundation \ File \ UploadedFile」:private] => string(10)「image/jpeg」 [「size」:「Symfony \ Component \ HttpFoundation \ File \ UploadedFile」:private] => int(18413) [「error」 File \ UploadedFile「:private] => int」(「pathName」:「SplFileInfo」:private] => string(25) 「C:\ wamp64 \ tmp \ phpBAE4.tmp」[「fileName」:「 SplFileInfo「:private] => string(11)」phpBAE4.tmp「} [1] => object(Illuminate \ Http \ UploadedFile)#217(7){」test「:」Symfony \ Component \ HttpFoundation \文件\ UploadedFile的 「:私人] => 布爾(假) [」 ORIGINALNAME 「:」 的Symfony \元器件\ HttpFoundation \文件\ UploadedFile的 「:私人] => 串(39) 」13296200_702501119889592_55691535_n.jpg「 [」 MIM eType「:」Symfony \ Component \ HttpFoundation \ File \ UploadedFile「:private] => string(10)」image/jpeg「 [」size「:」Symfony \ Component \ HttpFoundation \ File \ UploadedFile「:private] = (0)[「pathName」:「SplFileInfo」:private] => string(25)int(0)[「error」:「Symfony \ Component \ HttpFoundation \ File \ UploadedFile」:private] => int(95383) 「C:\ wamp64 \ TMP \ phpBAE5.tmp」[ 「文件名」: 「SplFileInfo」:私人] => 串(11) 「phpBAE5.tmp」}}
任何想法,線索,幫助請關於如何在循環內的多個文件上使用Laravel文件驗證?
PS:我在Laravel 5.2
在此處檢查? http://stackoverflow.com/questions/18079240/validating-multiple-file-uploads-with-laravel-4 – Ctc