Heim  >  Artikel  >  Backend-Entwicklung  >  So ermitteln Sie, ob in einem zweidimensionalen Array in PHP ein bestimmtes Dimensionsarray vorhanden ist

So ermitteln Sie, ob in einem zweidimensionalen Array in PHP ein bestimmtes Dimensionsarray vorhanden ist

PHPz
PHPzOriginal
2023-04-12 09:19:07654Durchsuche

In PHP ist der Umgang mit mehrdimensionalen Arrays eine der häufigsten Aufgaben. Für ein zweidimensionales Array müssen wir manchmal ein eindimensionales Array finden, das ein bestimmtes Element enthält. Wie kann man es erreichen?

Methode 1: Verwenden Sie die in_array-Funktion

PHPs integrierte in_array-Funktion kann herausfinden, ob ein bestimmtes Element in einem eindimensionalen Array enthalten ist. Für ein zweidimensionales Array können wir also das eindimensionale Array durchlaufen und die Funktion in_array aufrufen, um jeweils zu suchen. Wenn es gefunden wird, gibt es true zurück, andernfalls gibt es false zurück.

Das Folgende ist der Beispielcode:

function searchSubArrayInArray($needle, $haystack) {
  foreach ($haystack as $subArray) {
    if (in_array($needle, $subArray)) {
      return true;
    }
  }
  return false;
}

Im obigen Beispiel stellt $needle das eindimensionale Array dar, das durchsucht werden soll, und $haystack stellt das zweidimensionale Array dar, das durchsucht werden soll. Diese Funktion gibt einen Wert vom Typ Bool zurück, der angibt, ob er existiert.

Es ist zu beachten, dass bei der Funktion in_array die Groß-/Kleinschreibung beachtet wird. Daher müssen Sie bei der Verwendung auf die Groß-/Kleinschreibung achten.

Methode 2: Verwenden Sie die Funktion array_search

Neben der Funktion in_array bietet PHP auch eine weitere Möglichkeit, Elemente zu finden: die Funktion array_search. Diese Funktion durchsucht ein Array nach einem bestimmten Wert und gibt, falls gefunden, den Schlüssel für diesen Wert zurück (d. h. ein eindimensionales Array). Gibt false zurück, wenn es nicht gefunden wird.

Das Folgende ist der Beispielcode:

function searchSubArrayInArray($needle, $haystack) {
  foreach ($haystack as $key => $subArray) {
    if (array_search($needle, $subArray) !== false) {
      return $key;
    }
  }
  return false;
}

Im obigen Beispiel stellt $needle das eindimensionale Array dar, das durchsucht werden soll, und $haystack stellt das zweidimensionale Array dar, das durchsucht werden soll. Diese Funktion gibt einen Wert vom Typ int (d. h. den Schlüssel des eindimensionalen Arrays, das die Nadel im zweidimensionalen Array enthält) oder false zurück.

Es ist zu beachten, dass die Funktion array_search nur den ersten passenden Schlüssel zurückgibt, wenn mehrere eindimensionale Arrays Nadelelemente enthalten.

Zusammenfassung

Die oben genannten sind zwei gängige Methoden, um zu bestimmen, ob ein zweidimensionales Array ein eindimensionales Array enthält. Wenn es in tatsächlichen Projekten verwendet werden muss, müssen je nach tatsächlicher Situation unterschiedliche Methoden ausgewählt werden.

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie, ob in einem zweidimensionalen Array in PHP ein bestimmtes Dimensionsarray vorhanden ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn