Supprimer la chaîne de tableau PHP?
Il est possible de supprimer une chaîne de caractères (voir exemple ci-dessous) à partir d'un tableau PHP sans connaître l'index?
Exemple:
array = array("string1", "string2", "string3", "string4", "string5");
J'ai besoin de supprimer string3.
source d'informationauteur Zac Brown
Vous devez vous connecter pour publier un commentaire.
si vous pensez que votre valeur sera là plus d'une fois, essayez d'utiliser array_keys avec une valeur de recherche pour obtenir tous les indices. Vous voudrez probablement vous assurer
EDIT:
Noter que les indices restent inchangés lors de l'utilisation de
unset
. Si c'est un problème, il y a une belle réponse ici qui montre comment faire cela à l'aide dearray_splice
.Vous pouvez le faire.
Utiliser une combinaison de
array_search
etarray_splice
.Ce n'est probablement pas la méthode la plus rapide, mais c'est un court et soigné, une seule ligne de code:
ou si vous utilisez PHP >5.4.0 ou plus:
Ça dépend de la taille du tableau est susceptible d'être, et il y a plusieurs options.
Si elle est généralement assez petite, array_diff est probablement la manière la plus rapide solution cohérente, comme Jorge posté.
Une autre solution un peu plus grands ensembles:
Mais c'est seulement bon si vous n'avez pas les éléments en double. En fonction de votre charge de travail, il peut être avantageux de garantir l'unicité des éléments de trop.