Validation de tableau dans Laravel
Vous rencontrez des problèmes de validation lorsque vous traitez des données de tableau dans Laravel. Lorsque vous soumettez une requête POST vide, vous vous attendez à ce que la validation échoue, mais elle renvoie la valeur true.
Solution
Le problème réside dans la façon dont vous validez le tableau. Le symbole astérisque (*) dans Laravel valide les valeurs individuelles dans le tableau, pas le tableau lui-même. Pour valider le tableau, utilisez la syntaxe suivante :
$validator = Validator::make($request->all(), [ "names" => "required|array|min:3", "names.*" => "required|string|distinct|min:3", ]);
Explication
Dans cet exemple :
Avec cette logique de validation mise à jour, les requêtes POST vides échoueront comme prévu.
Améliorations de la validation dans Laravel 5.5
À partir de Laravel 5.5, vous pouvez utiliser une syntaxe simplifiée pour la validation de tableau en appelant le méthode validate() directement sur l'objet Request :
$data = $request->validate([ "names" => "required|array|min:3", "names.*" => "required|string|distinct|min:3", ]);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!