Vérification des paramètres manquants nuls et de chaîne de requête en PHP
-
09-10-2019 - |
Question
Je veux être en mesure de faire la distinction entre les paramètres de chaîne existante la requête à null, et les paramètres manquants. Ainsi, les parties de la question sont:
- Comment puis-je vérifier si un paramètre existe dans la chaîne de requête
- Quelle est la méthode établie pour faire passer une valeur NULL dans une chaîne de requête? (Par exemple param = null ou param = (rien))
Merci
Autres conseils
Ou utilisez array_key_exists
:
if(array_key_exists("myParam", $_GET)) {
}
Je ne l'ai jamais été désireux de « conventions » pour passer des valeurs vides au serveur -. Je suis habitué à tester la présence de variables, puis les tailler et les tests pour le vide, par exemple
Les valeurs stockées dans $_GET
et $_POST
ne peut être des chaînes ou des tableaux, à moins définir explicitement lors de l'exécution. Si vous avez une chaîne de requête de query=string
la valeur est "string"
si vous utilisez à la place: query=null
la valeur sera "null"
. Notez qu'il est à cet effet une chaîne.
Si vous envoyez: query=
, la valeur sera ""
ou la chaîne vide. Prenez note des différences entre isset
et empty
. isset
sera vrai si la valeur est nulle, alors que empty
sera vrai lorsque la valeur de evalue false
. ""
à cet effet sera vrai pour deux isset
et empty
.
Si vous voulez simplement vérifier si un paramètre de chaîne de requête a été réglée sur la valeur de chaîne de "null"
, vous pouvez simplement vérifier $_GET['query']=='null'
(vous pouvez régler le cas des caractères avant la vérification)
Avec une instruction if au lieu de deux:
if ((isset($_REQUEST['name'])) && (!empty($_REQUEST['name'])))
{
$name= $_REQUEST['name'];
}