Wie finde index des Objektes in php-array?
Hier ist print_r Ausgabe von meinem array:
Array
(
[0] => stdClass Object
(
[itemId] => 560639000019
[name] => Item no1
[code] => 00001
[qty] => 5
[id] => 2
)
[1] => stdClass Object
(
[itemId] => 470639763471
[name] => Second item
[code] => 76347
[qty] => 9
[id] => 4
)
[2] => stdClass Object
(
[itemId] => 56939399632
[name] => Item no 3
[code] => 39963
[qty] => 6
[id] => 7
)
)
Wie finde ich den index des Objekts mit [id] => 4, um es zu entfernen aus dem array?
- Komisch, dass nach dem löschen einer array-Element, bricht es die Funktionen json_encode damit die Ausgabe unbrauchbar wird.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist als schneller als jede andere Lösung, da wir nur Durchlaufen
array
zu, bis wir finden das Objekt, das wir entfernen möchten.Hinweis: Sie sollten nicht entfernen Sie ein element von einem array solange Durchlaufen, so dass wir es danach hier.
$parentObj
ist offensichtlich Ihr root-array), der eine hält den anderen.Verwenden wir die
foreach
- Schleife iteriert über jedes Element und dann testen Sie esid
Eigentum gegen was auch immer Wert, die Sie wünschen. Einmal haben wir, dass - die$key
, dass wir auf den index, die Sie suchen.$element
bezieht sich auf ein element innerhalb des Arrays...verwenden array_search:
versuchen, diese
Einen anderen Weg, Ergebnisse zu erzielen, ist die Verwendung array_filter.
Hier ist meine Lösung. Gegeben, es ist ein bisschen hackish, aber es wird den job zu erledigen.
search(array $items, mixed $id[, &$key]);
Wird das Element gefunden wurde, durch
$id
. Wenn Sie fügen Sie die variable$key
es wird dir den Schlüssel geben der Sache gefunden.Nutzung
Hinweis: Dies könnte geändert werden, damit ein custom-Taste und return-mehrere Elemente, die denselben Wert.
Ich habe ein Beispiel erstellt, so können Sie es in Aktion.
Eine lustige alternative
Derzeit php keine unterstützte Funktion für diese noch.
Deshalb finden Sie in der Java-Vector, oder die jQuery -$.inArray(), wäre es einfach:
Können Sie diese Funktion als Kern-Funktion für später.
id
4?ID
dann richtig?$found
array und entfernen Sie alle Tasten danach.