1
votes

Laravel post l'entrée en tant que tableau avec une clé différente ne valide pas

Je poste le paramètre search comme ci-dessous

array:2 [
  "value" => null
  "regex" => "false"
]

Dans mon contrôleur, je dois vérifier si search.value est vide ou non

if(empty($request->input('search.value')){

}else{

}

Mais toujours l'instruction else va à true, ce qui signifie que l'instruction if ne fonctionne pas.

Quand je le débogue

search[value]: something text // copied from debugger

Quelqu'un peut-il gentiment me faire savoir comment puis-je le vérifier correctement, j'apprécierais.

Merci


2 commentaires

Veuillez afficher votre code de vue car search.value n'est pas pris en charge


Cette syntaxe de dénomination génère des variables de tableau en PHP, donc cela devrait probablement être $ request-> input ('search') ['value'] ou quelque chose comme ça.


3 Réponses :


0
votes

Vous passez un tableau à partir de l'entrée, vous pouvez donc faire quelque chose comme ci-dessous,

$search = $request->input('search');
if($search['value']){

}else{

}


1 commentaires

Pouvez-vous dd ($ request-> all ())? et partagez le résultat.



0
votes

Ajoutez le code ci-dessous

if(empty($request->input('search.value'))){
    return 123;
}else{
    return 456;
}

Complétez simplement votre parenthèse dans la condition if.


0 commentaires

1
votes

Si vous souhaitez déterminer si une valeur est présente sur la requête et n'est pas vide, vous pouvez utiliser la méthode remplie:

if ($request->filled('search.value')) {
    //
}


0 commentaires