J'ai une ligne comme celle-ci dans mon code: Les 3 derniers paramètres peuvent être ou ne pas être là. Existe-t-il une fonction similaire à la liste qui ignorera automatiquement ces derniers paramètres si le tableau est plus petit que prévu? P> P>
3 Réponses :
Ajoutez simplement quelques tuyaux de rechange à la fin de la chaîne:
list($user_id, $name, $limit, $remaining, $reset) = explode('|', $user.'||||');
Stackoverflow.com/a/15365504/851643 semble une bien meilleure solution
list($user_id, $name, $limit, $remaining, $reset) = array_pad(explode('|', $user), 5, null);
Si vous craignez que la solution de SDC ressent "Hacky"; Ensuite, vous pouvez définir des valeurs par défaut et utiliser:
$user = '3|username'; $defaults = array(NULL, NULL, 10, 5, FALSE); list($user_id, $name, $limit, $remaining, $reset) = explode('|', $user) + $defaults; var_dump($user_id, $name, $limit, $remaining, $reset);
Exactement ce que je veux réaliser. Merci Mark.
Liste code> n'est pas une fonction.
"Ignorer" dans le sens de "ne pas attribuer quoi que ce soit" ou dans le sens de "attribuer null"?
Vous ne devriez pas vouloir cela. Lorsque vous définissez une variable par nom dans une portée, cette variable doit toujours être créée. Que devriez-vous arriver avec les variables vides? Ne devraient-ils pas être créés? Ça va gâcher le code suivant ...
Je veux juste qu'ils soient nuls. BTW, la communauté PHP est beaucoup plus rapide pour répondre à ces questions par rapport aux personnes Java !!