Heim  >  Artikel  >  Backend-Entwicklung  >  So ermitteln Sie, ob der angegebene Schlüsselwert in einem zweidimensionalen Array in PHP vorhanden ist

So ermitteln Sie, ob der angegebene Schlüsselwert in einem zweidimensionalen Array in PHP vorhanden ist

PHPz
PHPzOriginal
2023-04-20 13:54:23946Durchsuche

Für das zweidimensionale Array von PHP müssen wir häufig feststellen, ob ein Schlüssel-Wert-Paar im Array vorhanden ist. In diesem Artikel werden mehrere gängige Methoden vorgestellt.

  1. Funktion „in_array“ verwenden

Die Funktion „in_array“ kann verwendet werden, um festzustellen, ob ein Wert in einem Array vorhanden ist, sie kann jedoch nur einen Wert bestimmen. dimensionale Arrays können keine Schlüssel-Wert-Paare in einem zweidimensionalen Array ermitteln. Wir können seine Variante in_array_recursive verwenden, um rekursiv zu bestimmen, ob das Schlüssel-Wert-Paar im zweidimensionalen Array existiert.

Beispielcode:

function in_array_recursive($needle, $haystack, $strict = false)
{
    foreach ($haystack as $value) {
        if ((!$strict && $needle == $value) || ($strict && $needle === $value)) {
            return true;
        }
        if (is_array($value) && in_array_recursive($needle, $value, $strict)) {
            return true;
        }
    }
    return false;
}

$array = array(
    array('id' => 1, 'name' => '张三'),
    array('id' => 2, 'name' => '李四'),
    array('id' => 3, 'name' => '王五'),
);

if (in_array_recursive(array('id' => 1, 'name' => '张三'), $array)) {
    echo '存在';
} else {
    echo '不存在';
}
  1. Verwenden Sie die Funktion array_column.

Die Funktion array_column kann ein bestimmtes Element aus zwei Elementen extrahieren -dimensionales Array Eine Spalte dient als neues eindimensionales Array, und wir können damit bestimmen, ob ein Schlüssel im Array vorhanden ist.

Beispielcode:

$array = array(
    array('id' => 1, 'name' => '张三'),
    array('id' => 2, 'name' => '李四'),
    array('id' => 3, 'name' => '王五'),
);

$ids = array_column($array, 'id');

if (in_array(1, $ids)) {
    echo '存在';
} else {
    echo '不存在';
}
  1. Array_search-Funktion verwenden

array_search-Funktion kann einen Schlüsselwert in einem Array finden Wenn die Position des Schlüssels gefunden wird, wird der Index des Schlüssels zurückgegeben, andernfalls wird false zurückgegeben. Es kann jedoch nur eindimensionale Arrays finden und keine Schlüssel-Wert-Paare in zweidimensionalen Arrays. Wir können seinen dritten Parameter verwenden, um den Wert des Suchschlüssels anzugeben.

Beispielcode:

$array = array(
    array('id' => 1, 'name' => '张三'),
    array('id' => 2, 'name' => '李四'),
    array('id' => 3, 'name' => '王五'),
);

foreach ($array as $key => $value) {
    if (array_search(1, $value)) {
        echo '存在';
        break;
    } else {
        echo '不存在';
    }
}

Die oben genannten sind drei weitere gängige zweidimensionale Array-Beurteilungsmethoden. Sie können die geeignete Methode entsprechend der spezifischen Situation auswählen.

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie, ob der angegebene Schlüsselwert in einem zweidimensionalen Array in PHP 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