it4baer
Goto Top

Schnellste Auswahl in Objekten

Hallo,

ich bin auf der Suche, nach einer effizienten Methode Objekte zu durchsuchen und das gesuchte Element "zurückzugeben"...

Als kleines Beispiel habe ich hier ein einfaches Objekt aufgebaut:
$testObj = new stdClass();
$testObj->ebene = new stdClass();
$testObj->ebene->Id = 5;
$testObj->ebene->Name = "test1";  
$testObj->ebene[1] = new stdClass();
$testObj->ebene[1]->Id = 7;
$testObj->ebene[1]->Name = "test2";  

in diesen Objekt will ich jetzt nach "Name" suchen...

mit einer foreach schleife, könnte ich jetzt alle "ebenen" durchlaufen und schauen welcher Name meinem "gesuchten" namen entspricht...

jetzt wäre die Frage, ob dies Effizienter geht <- z.B. wenn es statt 2 Elemente evtl. 200000 Elemente sind.

Foreach funktioniert... aber wie gesagt, ich möchte meinen Horizont erweitern.
<- PS. die Objekte werden extern aufgebaut, ich habe leider keinen Einfluss drauf.

stdClass Object
(
    [ebene] => Array
        (
             => stdClass Object
                (
                    [Id] => 5
                    [Name] => test1
                )

            [1] => stdClass Object
                (
                    [Id] => 7
                    [Name] => test2
                )

        )

)

Content-ID: 337853

Url: https://administrator.de/contentid/337853

Ausgedruckt am: 22.11.2024 um 10:11 Uhr

132895
132895 16.05.2017 aktualisiert um 18:11:47 Uhr
Goto Top
<- PS. die Objekte werden extern aufgebaut, ich habe leider keinen Einfluss drauf.
Wenn das Objekt unbekannt ist wird dir nichts anderes übrig bleiben als es mit einer rekursiven Funktion zu durchlaufen. Anders machen es die Funktionen wie array_walk_recursive auch nicht.

Gruß