Heim > Backend-Entwicklung > PHP-Tutorial > PHP findet die beste Option für ein bestimmtes Element im Array

PHP findet die beste Option für ein bestimmtes Element im Array

王林
Freigeben: 2024-04-30 10:42:02
Original
665 Leute haben es durchsucht

Die beste Option zum Suchen von Array-Elementen in PHP hängt von der Größe des Arrays ab, davon, ob Groß-/Kleinschreibung berücksichtigt werden muss und ob Schlüsselwertinformationen erforderlich sind. Bei großen Arrays sind array_search() und array_key_exists() schneller und unterscheiden zwischen Groß- und Kleinschreibung. Wenn Sie Schlüsselwertinformationen benötigen, verwenden Sie in_array(); wenn Sie nur den Schlüssel benötigen, ist die Verwendung von array_key_exists() am schnellsten. Praxisbeispiel: Um zu überprüfen, ob ein bestimmtes Element in einem Array vorhanden ist, können Sie in_array() verwenden, was schnell und einfach zu verwenden ist.

PHP findet die beste Option für ein bestimmtes Element im Array

Beste Option in PHP, um ein bestimmtes Element in einem Array zu finden

In PHP gibt es mehrere Möglichkeiten herauszufinden, ob ein bestimmtes Element in einem Array vorhanden ist. Um die Methode auszuwählen, die Ihren Anforderungen am besten entspricht, ist es wichtig, die Vor- und Nachteile jeder Methode zu verstehen.

1. in_array()

in_array() Die Funktion prüft, ob ein gegebener Wert im Array vorhanden ist. Es benötigt zwei Parameter: in_array() 函数检查数组中是否存在给定的值。它采用两个参数:

  • 待查找的值
  • 数组
<?php
$array = ['foo', 'bar', 'baz'];
if (in_array('bar', $array)) {
    echo "bar exists in the array";
}
?>
Nach dem Login kopieren

in_array() 的优点:

  • 快速且容易使用
  • 不需要对数组进行排序

缺点:

  • 对于大数组可能效率低下
  • 不区分大小写

2. array_search()

array_search() 函数查找给定值的第一个键。它采用两个参数:

  • 待查找的值
  • 数组
<?php
$array = ['foo' => 'bar', 'bar' => 'baz', 'baz' => 'foo'];
$key = array_search('bar', $array);
if ($key !== false) {
    echo "bar exists in the array at key $key";
}
?>
Nach dem Login kopieren

array_search() 的优点:

  • 查找键和值
  • 区分大小写

缺点:

  • in_array()
  • 不适用于非关联数组

3. array_key_exists()

array_key_exists() 函数检查数组中是否存在给定的键。它采用两个参数:

  • 数组
<?php
$array = ['foo' => 'bar', 'bar' => 'baz', 'baz' => 'foo'];
if (array_key_exists('bar', $array)) {
    echo "bar exists in the array as a key";
}
?>
Nach dem Login kopieren

array_key_exists() 的优点:

  • 只查找键
  • in_array()array_search()

缺点:

  • 不查找值
  • 不区分大小写

实战案例:

假设我们有一个用户 ID 数组:

$users = [1, 2, 3, 4, 5];
Nach dem Login kopieren

要检查用户 ID 3 是否存在于数组中,我们可以使用以下代码:

if (in_array(3, $users)) {
    echo "User ID 3 exists";
}
Nach dem Login kopieren

选择指南:

  • 对于大数组,in_array() 可能效率低下,而 array_search()array_key_exists() 更快。
  • 如果区分大小写很重要,请使用 array_search()array_key_exists()
  • 如果您只对键感兴趣,请使用 array_key_exists()
    • Der zu findende Wert
    • Ein Array
    🎜rrreee🎜in_array() Vorteile: 🎜
    • Schnell und einfach Verwenden Sie 🎜
    • Das Array muss nicht sortiert werden🎜🎜🎜Nachteile: 🎜
      • Kann bei großen Arrays ineffizient sein🎜
      • Groß- und Kleinschreibung wird nicht beachtet🎜🎜🎜🎜2. array_search()🎜🎜🎜array_search() findet den ersten Schlüssel eines bestimmten Werts. Es werden zwei Parameter benötigt: 🎜
        • Der zu findende Wert 🎜
        • Array 🎜🎜rrreee🎜array_search() Vorteile: 🎜
          • Schlüssel und Werte finden 🎜
          • Groß-/Kleinschreibung beachten🎜🎜🎜Nachteile: 🎜
            • Langsamer als in_array()🎜
            • Nicht geeignet für nicht-assoziative Arrays🎜🎜🎜🎜3. array_key_exists() 🎜 🎜🎜array_key_exists()-Funktion prüft, ob ein bestimmter Schlüssel in einem Array vorhanden ist. Es benötigt zwei Parameter: 🎜
              • Key 🎜
              • Array 🎜🎜rrreee🎜array_key_exists() Vorteile: 🎜
                • Sucht nur nach Schlüsseln 🎜
                • Schneller als in_array() und array_search() 🎜🎜🎜Nachteile: 🎜
                  • Sucht nicht nach Werten 🎜
                  • Groß-/Kleinschreibung nicht beachtet 🎜🎜 🎜🎜 Praktischer Fall: 🎜🎜🎜Angenommen, wir haben ein Array von Benutzer-IDs: 🎜rrreee🎜 Um zu überprüfen, ob Benutzer-ID 3 im Array vorhanden ist, können wir den folgenden Code verwenden: 🎜rrreee🎜🎜Auswahlhilfe: 🎜🎜
                    • Für große Arrays kann in_array() ineffizient sein, während array_search() und array_key_exists() schneller sind. 🎜
                    • Wenn die Berücksichtigung der Groß- und Kleinschreibung wichtig ist, verwenden Sie array_search() oder array_key_exists(). 🎜
                    • Wenn Sie nur am Schlüssel interessiert sind, verwenden Sie array_key_exists(). 🎜🎜

Das obige ist der detaillierte Inhalt vonPHP findet die beste Option für ein bestimmtes Element im Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage