Heim > Artikel > Backend-Entwicklung > Ist es möglich, das von PHP zurückgegebene Array anzugeben?
Kann PHP ein Array zurückgeben und es angeben?
Für Anfänger ist das PHP-Array eine sehr wichtige Datenstruktur. Während der Entwicklung müssen wir oft ein Array zurückgeben, aber in manchen Fällen benötigen wir nur bestimmte Elemente in diesem Array. Verfügt PHP also über eine entsprechende Methode, die es uns ermöglicht, nur die angegebenen Elemente im Array zurückzugeben?
Die Antwort ist ja. In diesem Artikel werden zwei PHP-Funktionen vorgestellt: array_filter() und array_map(), die beide bestimmte Elemente in einem Array zurückgeben können.
array_filter()-Funktion
array_filter()-Funktion ist eine integrierte Funktion in PHP, die zum Filtern von Elementen in einem Array verwendet wird, die bestimmte Bedingungen nicht erfüllen und zurückgeben Elemente, die die Bedingungen erfüllen. Wir können das Callback-Funktionsargument dieser Funktion verwenden, um ein Array mit den gewünschten Array-Werten zurückzugeben.
Das Folgende ist ein Beispiel:
<?php $arr = [ 'name' => 'Tom', 'age' => 20, 'gender' => 'male' ]; // 只返回 name 和 age $result = array_filter($arr, function($key) { if ($key == 'name' || $key == 'age') { return true; } return false; }, ARRAY_FILTER_USE_KEY); print_r($result); ?>
In diesem Beispiel verwenden wir die Funktion array_filter(), die nur die Namens- und Alterselemente im Array zurückgibt. Der zweite Parameter der Funktion ist eine Callback-Funktion, die den Schlüsselnamen im Array als Parameter empfängt und einen booleschen Wert zurückgibt. Bei „true“ wird dieses Element eingebunden; bei „false“ wird dieses Element nicht eingebunden. Der Parameter ARRAY_FILTER_USE_KEY gibt an, dass wir den Schlüsselnamen und nicht den Schlüsselwert übergeben.
Wenn Sie mehrere gefilterte Schlüssel-Wert-Paare zurückgeben möchten, können Sie den folgenden Code verwenden:
<?php $arr = [ 'name' => 'Tom', 'age' => 20, 'gender' => 'male' ]; // 只返回 name 和 age $result = array_filter($arr, function($value, $key) { if ($key == 'name' || $key == 'age') { return true; } return false; }, ARRAY_FILTER_USE_BOTH); print_r($result); ?>
Dieses Beispiel ist dem obigen Beispiel sehr ähnlich, lässt sich jedoch kombinieren Der Schlüsselname und der Schlüsselwert werden an die Rückruffunktion übergeben, sodass wir Schlüsselnamen und Schlüsselwerte vergleichen können, um mehrere Schlüssel-Wert-Paare zurückzugeben.
array_map()-Funktion
array_map()-Funktion ist ebenfalls eine in PHP integrierte Funktion. Sie akzeptiert ein oder mehrere Arrays und gibt ein neues Array zurück, in dem sich jedes Element befindet Das Ergebnis der Verarbeitung des entsprechenden Elements in jedem ursprünglichen Array. Mit dieser Funktion können wir statt des gesamten Arrays ein Array mit den gewünschten Schlüsseln zurückgeben.
Das Folgende ist ein Beispiel:
<?php $arr = [ 'name' => 'Tom', 'age' => 20, 'gender' => 'male' ]; // 只返回 name 和 age $filtered_keys = ['name', 'age']; $result = array_map(function($key) use ($arr) { return $arr[$key]; }, $filtered_keys); print_r($result); ?>
In diesem Beispiel verwenden wir die Funktion array_map(), um ein Array zurückzugeben, das nur Name und Alter enthält. Der zweite Parameter der Funktion ist ein Array, das die erforderlichen Schlüssel enthält. Wir verwenden die Rückruffunktion von array_map(), um den Wert jedes Schlüssels abzurufen und das ursprüngliche Array mit dem Schlüsselwort use zu übergeben.
Es ist zu beachten, dass wir die Funktion array_filter() verwenden sollten, wenn wir nicht sicher sind, welche Artikel zurückgegeben werden sollen oder sich die Anzahl der Artikel im Laufe der Zeit ändern kann. Und wenn wir bereits wissen, welche Elemente zurückgegeben werden sollen oder die Anzahl der Elemente bekannt ist, können wir die Funktion array_map() verwenden.
Zusammenfassung
In PHP können wir die Funktionen array_filter() und array_map() verwenden, um die angegebenen Elemente im Array zurückzugeben. Sie alle können das Array über Rückruffunktionen filtern oder rekonstruieren, um die gewünschten Ergebnisse zurückzugeben. Wir können wählen, welche Funktion wir verwenden möchten, je nachdem, welche Artikel wir zurückgeben müssen und ob die Anzahl der Artikel festgelegt ist.
Das obige ist der detaillierte Inhalt vonIst es möglich, das von PHP zurückgegebene Array anzugeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!