Snažím sa prechádzať cez sadu chybových správ ($ validator-> errors () -> getMessages ()) a posunúť jeho objekty do iného poľa ($ error)
$error = array();
$validator = Validator::make($request->all(),[
"username" => "required|unique:User",
"password" => "required",
"fullname" => "required|unique:Profile",
"email" => "required|email|unique:Profile"
]);
if($validator->fails()) :
foreach($validator->errors()->getMessages() as $m => $key):
array_push($error,$key);
endforeach;
endif;
a potom vytvorí slučku k novej poľa (chyba $) a vytvoriť reťazec základňu o nové objekty array ($ str)
$str = "<ul class="c_red padding_zero margin_zero menu">";
foreach($error as $e ){ // this is the line 113
$str.= "<li>".$e."</li>";
}
$str.="</ul>";
return array("success" => false, "message" => $error );
ale vracia mi chybu
Konverzný riadok 113 na reťazec
tu je odpoveď, keď nie je slučka na $ error array na vytvorenie reťazca $ str
{"úspech": false, "správa": [["Vyžaduje sa pole používateľského mena."], ["Vyžaduje sa heslo" pole je> povinné. "]]}
odpovede:
0 pre odpoveď č. 1každý kľúč v chybách môže obsahovať viac ako jednu chybu, takže to bude reťazec ...
tak by ste to mohli urobiť:
if($validator->fails()) :
foreach($validator->errors()->getMessages() as $validationErrors):
if (is_array($validationErrors)) {
foreach($validationErrors as $validationError):
$error[] = $validationError;
endforeach;
} else {
$error[] = $validationErrors;
}
endforeach;
endif;
tu dostanete pole všetkých chybových hlásení ...