PHP - tableau vide
(array)$someemptyvariablethatisnotarray
retourne array([0] =>)
au lieu de array()
Comment puis-je faire si je reçois un tableau vide qui n'est pas itéré quand je l'utilise à l'intérieur foreach() ?
source d'informationauteur Alex
Vous devez vous connecter pour publier un commentaire.
La fonction que vous utilisez, est appelé "casting". Cela signifie qu'une variable est forcée de devenir un type donné, dans votre exemple d'un tableau. Comment le var est converti n'est pas toujours évident dans le PHP!
Dans votre exemple $someemptyvariablethatisnotarray devient un tableau avec une seule entrée, avec une valeur NULL.
La La documentation PHP dit:
À résoudre votre code, je recommanderais quelque chose comme ceci:
de vider un tableau. Est-ce que vous êtes après?
Peut-être? Si je ne suis pas sûr que je obtenir de la fonte, ou le but. Soins à ellaborate un peu plus (peut-être un exemple de ce que vous essayez d'accomplir?)
Essayer
unset($someemptyvariablethatisnotarray[0])
🙂comment allez-vous?
Je crois que c'est ce que vous êtes après:
Vous n'obtenez pas un tableau vide, parce que quand vous réglez "(tableau)faux", cela signifie que vous aurez un seul élément, et cet élément sera le "FAUX" valeur qui lui est assignée.
Même chose arrive avec une chaîne vide (non null). (array)$emptystring retourne un tableau qui contient un seul élément, ce qui est une chaîne vide!
Similaire à ce:
Espère que cela aide.
Cheers!
Lorsque vous lancez un tableau non comme un tableau, il crée un tableau avec une variable comme la seule valeur.
Si vous voulez un tableau vide, vous avez besoin de retourner
array()
.suffit d'utiliser
count()
par exemple:if(count($array) == 0 ){ //empty array }