So durchsuchen Sie ein mehrdimensionales Array effizient nach einem bestimmten Wert
Mehrdimensionale Arrays werden in der Programmierung häufig verwendet und es ist häufig erforderlich, danach zu suchen spezifische Werte in ihnen. Diese Aufgabe kann besonders herausfordernd sein, wenn Sie überprüfen müssen, ob ein bestimmter Wert in einem der Unterarrays vorhanden ist.
Betrachten Sie das folgende mehrdimensionale Array:
$my_array = array( 0 => array( "name" => "john", "id" => 4 ), 1 => array( "name" => "mark", "id" => 152 ), 2 => array( "name" => "Eduard", "id" => 152 ) );
Um effektiv nach der Existenz von zu suchen Wenn Sie ein Schlüssel-Wert-Paar in diesem Array sind, fragen Sie sich vielleicht, was die schnellste und effizienteste Methode ist.
Die effizienteste Lösung
Nach sorgfältiger Analyse ist die einfachste und Ein effizienter Ansatz besteht darin, das mehrdimensionale Array mithilfe einer einfachen Schleife zu durchlaufen. Obwohl es Alternativen wie Array-Funktionen gibt, implementieren sie letztendlich Schleifen hinter den Kulissen.
Die Funktion
Unten finden Sie eine Funktion, die effizient nach einem bestimmten Wert mit a sucht angegebener Schlüssel in einem mehrdimensionalen Array:
<code class="php">function exists($array, $key, $val) { foreach ($array as $item) { if (isset($item[$key]) && $item[$key] == $val) return true; } return false; }</code>
Verwendung
Anhand des Beispielarrays können Sie nach der Existenz des Schlüssels „id“ mit einem Wert von suchen 152 wie folgt:
<code class="php">$exists = exists($my_array, "id", 152); if ($exists) { echo "Value exists in the array."; } else { echo "Value does not exist in the array."; }</code>
Schlussfolgerung
Die Suche nach einem bestimmten Wert in einem mehrdimensionalen Array erfordert eine sorgfältige Abwägung der Effizienz. Die vorgestellte schleifenbasierte Lösung ist der schnellste und unkomplizierteste Ansatz, mit dem Sie schnell feststellen können, ob der gewünschte Wert im Array vorhanden ist.
Das obige ist der detaillierte Inhalt vonWie kann man effizient nach einem bestimmten Wert in einem mehrdimensionalen Array suchen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!