Pourquoi ne json_decode retourner la valeur null pour tableau vide?
Pourquoi en serait-il de l'écho "NULL"? Dans mon serait ce serait décodé à un tableau vide.
Est-il quelque chose d'évident, je suis absent?
<?php
$json = json_encode(array());
$json_decoded = json_decode($json, true);
//same with json_decode($json);
if ($json_decoded == null){
echo "NULL";
} else
{
echo "NOT NULL";
}
?>
que faire si vous essayez
il n'y a pas de
Vous vous attendiez à revenir à quelque chose de différent?
$json_decoded === null
?il n'y a pas de
new
mot-clé pour un tableau en PHP.Vous vous attendiez à revenir à quelque chose de différent?
OriginalL'auteur netigger | 2012-06-13
Vous devez vous connecter pour publier un commentaire.
C'est parce que
array()==NULL
. Il ne vérifie pas le type d'objet dans ce cas.gettype(null)
renvoie la valeur null, alors quegettype(array())
retourne un tableau. J'espère que vous avez la différence.Probablement ce que vous avez besoin est
OriginalL'auteur gopi1410
print_r de $json_decoded valeur qu'il donne au tableau vide à l'arrière. 🙂
sorties : Array ( )
C'est parce que avec l'opérateur == le tableau vide obtient de type jonglé null
OriginalL'auteur mithunsatheesh
Cela doit faire l'affaire
Exemple de la manuel:
De sortie:
OriginalL'auteur greenLizard
Vous devez utiliser l'opérateur d'égalité stricte
===
, d'observer par vous-même:Faisant:
serions en droit d'aller dans
else
condition impressionNOT NULL
OriginalL'auteur Sarfraz
Si vos données contiennent certains
\n
json_decode peut échouer en silence.OriginalL'auteur Hafenkranich