Array-Funktionen in PHP8: verschiedene praktische Anwendungen von array_search()

PHPz
Freigeben: 2023-05-16 10:48:01
Original
2564 Leute haben es durchsucht

PHP ist eine in der Webentwicklung weit verbreitete Programmiersprache. Die verschiedenen neuen Funktionen, die in ihrer neuesten Version, PHP8, hinzugefügt wurden, haben bei Entwicklern große Aufmerksamkeit erregt. Eines der wichtigen Features ist die Verbesserung der Array-Funktionen, von denen die Funktion array_search() eine der bemerkenswertesten ist. In diesem Artikel stellen wir verschiedene praktische Anwendungen der Funktion array_search() vor, damit jeder diese praktische Funktion besser beherrschen kann.

1. Was ist die Funktion array_search()?

Bevor wir die verschiedenen Anwendungen der Funktion array_search() verstehen, müssen wir zunächst verstehen, was diese Funktion ist und wofür sie verwendet wird. Einfach ausgedrückt wird die Funktion array_search() verwendet, um die Indexposition des angegebenen Elements im Array zu finden. Wenn es gefunden wird, gibt es den Schlüssel des Elements im Array zurück, andernfalls gibt es false zurück.

Diese Funktion hat die folgende grundlegende Syntax:

array_search($search, $array, $strict)
Nach dem Login kopieren

Unter diesen ist $search das zu findende Element, $array das zu findende Array und $strict ein optionaler Parameter, mit dem gesteuert wird, ob der „strenge Modus“ ausgeführt werden soll " (d. h. Parameter Die Typen müssen genau übereinstimmen). Die Funktion gibt zwei Ergebnisse zurück: Wenn die Suche erfolgreich ist, wird der Schlüssel des Elements im Array zurückgegeben, andernfalls wird false zurückgegeben.

Als nächstes stellen wir verschiedene praktische Anwendungsszenarien vor, damit jeder die Funktion array_search() besser verstehen kann.

2. Bestimmte Elemente aus einem Array löschen

Manchmal müssen wir bestimmte Elemente aus einem Array löschen. In diesem Fall können wir die Funktion array_search() verwenden, um die Indexposition des zu entfernenden Elements zu finden, und es dann mit der Funktion array_splice() aus dem Array entfernen.

Der Beispielcode lautet wie folgt:

$arr = array('a', 'b', 'c', 'd', 'e');
$search = 'c';
$key = array_search($search, $arr);
if ($key !== false) { // 判断是否查找到了指定元素
    array_splice($arr, $key, 1);
}
print_r($arr);
Nach dem Login kopieren

Nach der Ausführung des obigen Codes lautet das Ausgabeergebnis wie folgt:

Array
(
    [0] => a
    [1] => b
    [2] => d
    [3] => e
)
Nach dem Login kopieren

Wie Sie sehen können, wurde das Element „c“ im Array gelöscht. Diese Methode eignet sich für Situationen, in denen Sie ein Array-Element „schnell löschen“ müssen, da sie direkt innerhalb des Arrays funktioniert und nicht das Kopieren des gesamten Arrays erfordert.

3. Überprüfen Sie, ob das Array das angegebene Element enthält.

Während des Entwicklungsprozesses müssen wir manchmal überprüfen, ob ein Array das angegebene Element enthält. Die Funktion array_search() kann uns bei der Lösung dieser Aufgabe helfen. Hier ist ein Beispiel:

$arr = array('apple', 'banana', 'pear', 'grape');
$search = 'apple';
$key = array_search($search, $arr);
if ($key !== false) {
    echo 'The fruit "' . $search . '" exists in the array.' . '<br>';
} else {
    echo 'The fruit "' . $search . '" does not exist in the array.' . '<br>';
}
Nach dem Login kopieren

Hier definieren wir zunächst ein Array mit den Namen von vier Früchten. Dann definieren wir eine $search-Variable und verwenden die Funktion array_search(), um das Element im Array zu finden. Schließlich verwenden wir eine if-Anweisung, um den Wert der Variablen $search zu überprüfen. Wenn er nicht falsch ist, bedeutet dies, dass das Element im Array vorhanden ist.

4. Suche nach passenden Elementen in einem zweidimensionalen Array

Die Funktion array_search() ist sehr nützlich, wenn ein eindimensionales Array durchsucht wird, aber sie ist etwas komplizierter, wenn ein zweidimensionales Array durchsucht wird. In diesem Fall können wir eine foreach-Schleife verwenden, um jedes Element des Arrays zu durchsuchen, und dann die Funktion array_search() verwenden, um das angegebene Element zu finden.

Das Folgende ist ein Beispielcode mit einem zweidimensionalen Array:

$array = array(
    array('name' => 'Alice', 'age' => 22),
    array('name' => 'Bob', 'age' => 23),
    array('name' => 'Charlie', 'age' => 24)
);
$search = 'Bob';
foreach ($array as $key => $value) {
    if (array_search($search, $value)) {
        echo 'The person named ' . $search . ' exists in the array.' . '<br>';
    } else {
        echo 'The person named ' . $search . ' does not exist in the array.' . '<br>';
    }
}
Nach dem Login kopieren

Hier definieren wir ein zweidimensionales Array, das die Namen von drei Personen („Alice“, „Bob“ und „Charlie“) und deren Alter enthält . Anschließend verwenden wir eine foreach-Schleife, um nach jedem Element im Array zu suchen. In der Schleife verwenden wir die Funktion array_search(), um den Namen der angegebenen Person zu finden. Wenn eine Übereinstimmung gefunden wird, geben wir eine Nachricht auf der Webseite aus, andernfalls geben wir eine weitere Nachricht aus.

5. Suche nach passenden Elementen in mehreren Arrays

Wenn wir nach passenden Elementen in mehreren Arrays suchen müssen, kann uns die Funktion array_search() auch dabei helfen, diese Aufgabe zu erledigen. Hier ist ein Beispiel:

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$array3 = array('g', 'h', 'i');
$search = 'c';
$found = false;
foreach (array($array1, $array2, $array3) as $array) {
    if (array_search($search, $array)) {
        $found = true;
        break;
    }
}
if ($found) {
    echo 'The element "' . $search . '" exists in one of the arrays.' . '<br>';
} else {
    echo 'The element "' . $search . '" does not exist in any of the arrays.' . '<br>';
}
Nach dem Login kopieren

Hier haben wir drei Arrays $array1, $array2 und $array3 definiert und eine $search-Variable definiert. Dann verwenden wir eine foreach-Schleife, um alle Arrays zu durchlaufen, und verwenden die Funktion array_search(), um das angegebene Element in jedem Array zu finden. Wenn eine Übereinstimmung gefunden wird, setzen wir eine $found-Variable auf true und verwenden dann die break-Anweisung, um aus der Schleife auszubrechen. Schließlich verwenden wir eine if-Anweisung, um den Wert der Variablen $found zu überprüfen und festzustellen, ob das angegebene Element in einem Array gefunden wird.

6. Suche nach Pfaden in mehrdimensionalen Arrays

In manchen Fällen müssen wir nach einem bestimmten Pfad in einem mehrdimensionalen Array suchen und die Elemente im Pfad zurückgeben. Hier ist ein Anwendungsfall:

$array = array(
    'a' => array('b' => array('c' => 'd'))
);
$search = 'c';
function search_path($array, $search, &$path = array()) {
    foreach ($array as $key => $value) {
        if (is_array($value)) {
            $path[] = $key;
            if (search_path($value, $search, $path)) {
                return true;
            }
            array_pop($path);
        } else {
            if ($key === $search) {
                $path[] = $key;
                return true;
            }
        }
    }
    return false;
}
$path = array();
if (search_path($array, $search, $path)) {
    echo 'The path to "' . $search . '" is: ' . implode(' > ', $path) . '<br>';
} else {
    echo 'Could not find the path to "' . $search . '".' . '<br>';
}
Nach dem Login kopieren

In diesem Beispiel definieren wir ein mehrdimensionales Array, das einen Skalarwert „d“ enthält, der im Pfad „a/b/c“ gespeichert ist. Anschließend verwenden wir eine benutzerdefinierte Funktion search_path(), um den Pfad zu finden und die Elemente im Pfad zurückzugeben. Diese Funktion verwendet Rekursion, um das mehrdimensionale Array zu durchqueren und Elemente im angegebenen Pfad zu finden. Wenn der Pfad gefunden wird, speichern Sie ihn in einem $paths-Array und geben Sie „true“ zurück. Wenn nicht gefunden, gibt die Funktion „false“ zurück.

Nachdem wir die Funktion search_path() ausgeführt haben, übergeben wir das Array $path als Parameter und können die Funktion implode() verwenden, um den Pfad auf der Webseite anzuzeigen.

Fazit

In diesem Artikel haben wir verschiedene praktische Anwendungsmethoden der Funktion array_search() vorgestellt. Diese Funktion kann nicht nur Elemente in eindimensionalen Arrays finden, sondern auch Pfade in mehrdimensionalen Arrays. Durch die Beherrschung dieser Funktion können wir Arrays und Daten während des Entwicklungsprozesses bequemer und effizienter verwalten.

Das obige ist der detaillierte Inhalt vonArray-Funktionen in PHP8: verschiedene praktische Anwendungen von array_search(). 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!