Controllo per nulla e mancanti parametri stringa di query in PHP
-
09-10-2019 - |
Domanda
Voglio essere in grado di distinguere tra esistente di query parametri di stringa impostata su null, e parametri mancanti. Quindi le parti della domanda sono:
- Come posso controllare se un parametro esiste nella stringa di query
- Qual è il metodo stabilito per il passaggio di un valore nullo in una stringa di query? (Ad esempio param = null o param = (nulla))
Grazie
Altri suggerimenti
In alternativa, utilizzare array_key_exists
:
if(array_key_exists("myParam", $_GET)) {
}
Non sono mai stato appassionato di 'convenzioni' per il passaggio di valori vuoti al server -. Sono abituato a test per la presenza di variabili, e poi li taglio e test per il vuoto, per esempio
I valori memorizzati nel $_GET
e $_POST
può essere solo stringhe o array, se non esplicitamente fissato in fase di esecuzione. Se si dispone di una stringa di query di query=string
valore è "string"
se si utilizza invece: query=null
il valore sarà "null"
. Si noti che si tratta Perciò una stringa.
Se si invia: query=
, il valore sarà ""
o la stringa vuota. Prendere nota dei differenze tra isset
e empty
. isset
sarà vero se il valore non è nullo, mentre empty
sarà vero quando il valore di Esamina false
. Perciò ""
sarà vero per sia e isset
empty
.
Se si desidera solo per verificare se un parametro di stringa di query è stato impostato per il valore della stringa di "null"
, si può semplicemente verificare $_GET['query']=='null'
(si consiglia di regolare il caso dei personaggi prima del controllo)
Con un if invece di due:
if ((isset($_REQUEST['name'])) && (!empty($_REQUEST['name'])))
{
$name= $_REQUEST['name'];
}