Einführung in die Verwendung der PHP-Funktion array_filter()

王林
Freigeben: 2023-06-27 14:26:01
Original
3417 Leute haben es durchsucht

In der PHP-Programmierung ist Array ein sehr häufiger Datentyp. Das Filtern und Filtern von Arrays ist eine der häufigsten Vorgänge. Zu diesem Zeitpunkt können Sie die von PHP bereitgestellte Array-Funktion array_filter() verwenden. In diesem Artikel wird die Verwendung dieser Funktion vorgestellt und demonstriert.

1. Grundlegende Verwendung der Funktion array_filter()

Die Funktion der Funktion array_filter() besteht darin, das Array zu überprüfen und zu filtern. Die grundlegende Syntax lautet wie folgt:

array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )
Nach dem Login kopieren

Unter diesen ist der Parameter $array das zu überprüfende und zu filternde Array; der Parameter $callback ist ein optionaler Parameter, der zum Angeben einer Rückruffunktion zur Beurteilung jedes Elements des Arrays verwendet wird Die Elemente, die die Bedingungen erfüllen, werden beibehalten, und Elemente, die die Bedingungen nicht erfüllen, werden gelöscht. Der Parameter $flag ist ebenfalls ein optionaler Parameter, der zur Angabe der Regeln der Filtermethode verwendet wird. Es gibt nämlich insgesamt vier Regeln :

  • ARRAY_FILTER_USE_KEY – Geben Sie die Verwendung von Schlüsselnamen zum Filtern und Filtern an;
  • ARRAY_FILTER_USE_BOTH – Gibt die Verwendung von Schlüsselnamen und Schlüsselwerten für das Filtern an;
  • ARRAY_FILTER_USE_VALUE – Gibt die Verwendung von Schlüsselwerten für an Filtern und Filtern;
  • 0 – gibt die Verwendung von Schlüsselwerten zum Filtern und Filtern an (Standardoption).

Als nächstes stellen wir die Parameter im Detail vor.

2. Detaillierte Erläuterung des $array-Parameters

Dieser Parameter ist ein erforderlicher Parameter und stellt das zu überprüfende und zu filternde Array dar. Die spezifische Verwendung ist wie folgt:

$arr = array(1, 2, 3, 4, 5);
$newArr = array_filter($arr);
print_r($newArr); //输出:Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Nach dem Login kopieren

Im obigen Beispiel ist $arr das ursprüngliche Array, das überprüft und gefiltert werden soll, und $newArr ist das neue Array, das nach der Verarbeitung durch die Funktion array_filter() erhalten wird. Wenn der Parameter $callback nicht übergeben wird, werden alle nicht „falschen“ Elemente in $array beibehalten und das Ausgabeergebnis stimmt mit dem ursprünglichen Array überein.

3. Detaillierte Erläuterung des $callback-Parameters

Der $callback-Parameter ist optional. Wenn dieser Parameter nicht angegeben ist, verwendet die Funktion standardmäßig die folgenden Regeln zum Filtern:

  • Alle nicht „falschen“ Elemente beibehalten in $array ;
  • Löschen Sie alle „falschen“ Elemente in $array;
  • Ordnen Sie die beibehaltenen Elemente neu an und geben Sie ein neues Array zurück.

Wenn der Parameter $callback angegeben ist, muss $callback eine Rückruffunktion sein, die verwendet wird, um zu bestimmen, ob jedes Element im Array die Screening- oder Filteranforderungen erfüllt.

Die Rückruffunktion muss einen Parameter akzeptieren, der das zu verarbeitende Element ist, und dann einen Wert zurückgeben. Wenn der zurückgegebene Wert „wahr“ ist, bedeutet dies, dass das Element die Anforderungen erfüllt und beibehalten werden sollte. Wenn der zurückgegebene Wert „false“ ist, bedeutet dies, dass das Element die Anforderungen nicht erfüllt und entfernt werden sollte.

Die grundlegende Syntax der Rückruffunktion lautet wie folgt:

function callback_function($element) {
   // 进行一些处理,然后返回true或false
}
Nach dem Login kopieren

Das Folgende ist ein Beispiel:

$arr = array(1, 2, 3, 4, 5);
$newArr = array_filter($arr, function($element) {
   return $element > 2;
});
print_r($newArr); //输出:Array ( [2] => 3 [3] => 4 [4] => 5 )
Nach dem Login kopieren

Im obigen Beispiel übergeben wir eine Rückruffunktion, die verwendet wird, um zu bestimmen, ob jedes Element im Array größer ist als 2. Wenn ja, behalten Sie das Element bei, andernfalls löschen Sie das Element. Nach der Verarbeitung bleiben nur die Elemente 3, 4 und 5 erhalten.

4. Detaillierte Erläuterung des $flag-Parameters

Der $flag-Parameter ist ebenfalls ein optionaler Parameter, der zur Angabe der Regeln der Filtermethode verwendet wird. Wenn dieser Parameter nicht angegeben ist, wird standardmäßig die Regel „Schlüsselwertfilterung“ verwendet. Hier sind vier Regeln:

  1. $flag = ARRAY_FILTER_USE_KEY

Verwenden Sie Schlüsselnamen zum Filtern und Filtern. Hier ist ein Beispiel:

$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4);
$newArr = array_filter($arr, function($key) {
   return $key == 'a' || $key == 'c';
}, ARRAY_FILTER_USE_KEY);
print_r($newArr); //输出:Array ( [a] => 1 [c] => 3 )
Nach dem Login kopieren

Im obigen Beispiel ist der Parameter $flag auf ARRAY_FILTER_USE_KEY gesetzt, was bedeutet, dass nur der Schlüsselname zum Filtern und Filtern verwendet wird. Die Callback-Funktion kann die Elemente mit den Schlüsselnamen „a“ und „c“ behalten und ein neues Array zurückgeben.

  1. $flag = ARRAY_FILTER_USE_BOTH

Verwenden Sie den Schlüsselnamen und den Schlüsselwert zum Filtern und Filtern. Hier ist ein Beispiel:

$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4);
$newArr = array_filter($arr, function($key, $value) {
   return $key == 'a' && $value == 1;
}, ARRAY_FILTER_USE_BOTH);
print_r($newArr); //输出:Array ( [a] => 1 )
Nach dem Login kopieren

Im obigen Beispiel ist der Parameter $flag auf ARRAY_FILTER_USE_BOTH gesetzt, was bedeutet, dass sowohl Schlüsselnamen als auch Schlüsselwerte zum Filtern und Filtern verwendet werden. Die Rückruffunktion kann das Element mit dem Schlüsselnamen „a“ und dem Schlüsselwert 1 behalten und ein neues Array zurückgeben.

  1. $flag = ARRAY_FILTER_USE_VALUE

Verwenden Sie den Schlüsselwert zum Filtern und Filtern. Hier ist ein Beispiel:

$arr = array(1, 2, 3, 4, 5);
$newArr = array_filter($arr, function($value) {
   return $value % 2 == 0;
}, ARRAY_FILTER_USE_VALUE);
print_r($newArr); //输出:Array ( [1] => 2 [3] => 4 )
Nach dem Login kopieren

Im obigen Beispiel ist der Parameter $flag auf ARRAY_FILTER_USE_VALUE gesetzt, was bedeutet, dass nur Schlüsselwerte zum Filtern und Filtern verwendet werden. Die Callback-Funktion kann gerade nummerierte Elemente beibehalten und ein neues Array zurückgeben.

  1. $flag = 0

Geben Sie die Verwendung des Schlüsselwerts zum Filtern und Filtern an (Standardoption). Hier ist ein Beispiel:

$arr = array(1, 2, 3, 4, 5);
$newArr = array_filter($arr, function($value) {
   return $value > 2;
});
print_r($newArr); //输出:Array ( [2] => 3 [3] => 4 [4] => 5 )
Nach dem Login kopieren

Im obigen Beispiel ist der Parameter $flag nicht festgelegt, was bedeutet, dass standardmäßig Schlüsselwerte zum Filtern und Filtern verwendet werden. Die Rückruffunktion kann Elemente mit mehr als 2 beibehalten und ein neues Array zurückgeben.

5. Zusammenfassung

Die Funktion array_filter() ist eine sehr häufige und praktische Array-Funktion in PHP, die zum Filtern und Filtern von Arrays verwendet werden kann. Dieser Artikel bietet eine detaillierte Einführung und Demonstration der grundlegenden Verwendung und Parametererklärung dieser Funktion. Ich hoffe, dass Sie durch das Studium dieses Artikels die Grundprinzipien und die Verwendung dieser Funktion beherrschen und sie in der tatsächlichen Programmierung flexibel einsetzen können.

Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung der PHP-Funktion array_filter(). 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