Heim > Backend-Entwicklung > PHP-Problem > So finden Sie heraus, ob ein bestimmter Wert in einem zweidimensionalen Array in PHP vorhanden ist

So finden Sie heraus, ob ein bestimmter Wert in einem zweidimensionalen Array in PHP vorhanden ist

PHPz
Freigeben: 2023-04-20 14:10:31
Original
1416 Leute haben es durchsucht

Zweidimensionales PHP-Array, um herauszufinden, ob ein bestimmter Wert vorhanden ist

In PHP ist Array einer der am häufigsten verwendeten Datentypen, und zweidimensionale Arrays sind eine der am häufigsten verwendeten Array-Formen. In der tatsächlichen Entwicklung müssen wir häufig herausfinden, ob ein bestimmter Wert in einem zweidimensionalen Array vorhanden ist. In diesem Artikel werden verschiedene Implementierungsmethoden vorgestellt.

  1. Verwenden Sie die foreach-Schleife

Zuerst können wir die foreach-Schleife verwenden, um das gesamte zweidimensionale Array zu durchlaufen und nacheinander herauszufinden, ob der Zielwert vorhanden ist. Der Code lautet wie folgt:

function search_array($array, $search_value)
{
    foreach($array as $value)
    {
        if(in_array($search_value, $value))
        {
            return true;
        }
    }
    return false;
}
Nach dem Login kopieren

Im obigen Code definieren wir eine Funktion namens search_array, die zwei Parameter empfängt: $array repräsentiert das zu durchsuchende zweidimensionale Array und $search_value repräsentiert den zu durchsuchenden Wert.

Im Funktionskörper verwenden wir zunächst die foreach-Schleife, um das zweidimensionale Array zu durchlaufen, wobei wir jedes Mal ein Array-Element $value herausnehmen, und verwenden dann die Funktion in_array, um zu prüfen, ob $search_value in $value vorhanden ist , gibt die Funktion „true“ zurück, was darauf hinweist, dass der Zielwert gefunden wurde; andernfalls wird die Schleife fortgesetzt, bis das Array durchlaufen ist.

Hinweis: Die Funktion in_array() wird verwendet, um nach einem bestimmten Wert in einem Array zu suchen. Gibt true zurück, wenn es gefunden wird, andernfalls false.

  1. Verwenden der Funktion array_walk

Zusätzlich zur Verwendung der foreach-Schleife können wir auch die Funktion array_walk verwenden, um jedes Array-Element zu verarbeiten und zu prüfen, ob der Zielwert vorhanden ist. Der Code lautet wie folgt:

function search_array($array, $search_value)
{
    $found = false;
    array_walk($array, function($value) use (&$found, $search_value){
        if(in_array($search_value, $value))
        {
            $found = true;
        }
    });
    return $found;
}
Nach dem Login kopieren

Im obigen Code definieren wir zunächst eine Funktion namens search_array, die zwei Parameter empfängt: $array repräsentiert das zu durchsuchende zweidimensionale Array und $search_value repräsentiert den zu durchsuchenden Wert. Wir definieren außerdem eine Variable $found, die angibt, ob der Zielwert gefunden wurde, und wird auf „false“ initialisiert.

Dann haben wir die Funktion array_walk aufgerufen, um das Array $array zu durchlaufen. Hier haben wir eine anonyme Funktion als Rückruffunktion verwendet. Diese Funktion empfängt den Parameter $value, um das Array-Element darzustellen $search_value in. Verwenden Sie im Funktionskörper die Funktion in_array, um zu prüfen, ob $search_value in $value vorhanden ist, und wenn ja, setzt $found den Wert true, um anzuzeigen, dass der Zielwert gefunden wurde. Schließlich gibt die Funktion den Wert von $found zurück und gibt an, ob der Zielwert gefunden wurde.

Hinweis: Die Funktion array_walk() wendet eine benutzerdefinierte Funktion auf jedes Element im Array an. Gibt bei Erfolg TRUE zurück, andernfalls FALSE.

  1. Verwenden Sie die Funktion array_reduce

Schließlich können wir auch die Funktion array_reduce verwenden, um das gesamte zweidimensionale Array zu durchlaufen und nacheinander zu prüfen, ob jedes Array-Element den Zielwert enthält. Der Code lautet wie folgt:

function search_array($array, $search_value)
{
    $found = array_reduce($array, function($carry, $value) use ($search_value){
        return $carry || in_array($search_value, $value);
    }, false);
    return $found;
}
Nach dem Login kopieren

Im obigen Code definieren wir zunächst eine Funktion namens search_array, die zwei Parameter empfängt: $array repräsentiert das zu durchsuchende zweidimensionale Array und $search_value repräsentiert den zu durchsuchenden Wert.

Dann verwenden wir die Funktion array_reduce, um das gesamte zweidimensionale Array zu durchlaufen, wobei wir eine anonyme Funktion als Rückruffunktion verwenden, wobei $carry den Rückgabewert der vorherigen Iteration darstellt und $value das Array-Element darstellt, zu dem aktuell iteriert wird. Die Funktion in_array wird im Funktionskörper verwendet, um zu prüfen, ob $search_value in $value vorhanden ist. Wenn es vorhanden ist, wird $carry || zurückgegeben, was darauf hinweist, dass der Zielwert gefunden wurde. Dies zeigt an, dass der Zielwert nicht gefunden wurde. Schließlich gibt die Funktion den Wert von $found zurück und gibt an, ob der Zielwert gefunden wurde.

Hinweis: Die Funktion array_reduce() verwendet eine Rückruffunktion, um das Array iterativ auf einen einzelnen Wert zu reduzieren.

Zusammenfassung

Dieser Artikel stellt drei Möglichkeiten vor, ein zweidimensionales PHP-Array zu implementieren, um einen bestimmten Wert zu finden. Es verwendet die foreach-Schleife, die Funktion array_walk und die Funktion array_reduce, um das zweidimensionale Array zu durchlaufen und zu überprüfen, ob es den Zielwert enthält . In der tatsächlichen Entwicklung sollten wir basierend auf der tatsächlichen Situation eine geeignete Implementierungsmethode auswählen, um die Codeeffizienz und Ausführungsgeschwindigkeit zu verbessern.

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

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