Instanz
Verwenden Sie die Rückruffunktion , um Elemente im Array zu filtern:
<?php function test_odd($var) { return($var & 1); } $a1=array("a","b",2,3,4); print_r(array_filter($a1,"test_odd")); ?>
Definition und Verwendung
array_filter ()-Funktion verwendet eine Rückruffunktion, um die Elemente im Array zu filtern.
Diese Funktion übergibt jeden Schlüsselwert im Eingabearray an die Rückruffunktion. Wenn die Rückruffunktion „true“ zurückgibt, wird der aktuelle Schlüsselwert im Eingabearray an das Ergebnisarray zurückgegeben. Die Namen der Array-Schlüssel bleiben unverändert.
Syntax
array_filter(array,callbackfunction);
参数 | 描述 |
array | 必需。规定要过滤的数组。 |
callbackfunction | 必需。规定要用的回调函数。 |
Technische Details
返回值: | 返回过滤的数组。 |
PHP 版本: | 4.0.6+ |
Als ich das Handbuch durchgesehen habe um mich nach den Verwendungsdetails von zu erkundigen array_filter() habe ich heute einen kleinen wichtigen Punkt gesehen: Wenn kein Callback angegeben wird, werden alle Eingabeeinträge gleich FALSE (siehe Konvertieren in Boolesch) entfernt. Wenn keine Callback-Funktion angegeben ist, werden alle Einträge gleich FALSE entfernt . Wäre dies nicht nützlich zum Filtern von Arrays mit leeren Elementen? Schreiben Sie schnell ein Beispiel, um die Idee zu testen:
$entry = array( 0 => '蓝色夏威夷的博客', 1 => false, 2 => 1, 3 => null, 4 => '', 5 => 'http://www.jb51.net', 6 => '0', 7 => array(), 8 => 0 ); $validarr = array_filter($entry); print_r($validarr); //输出结果: Array ( [0] => 蓝色夏威夷的博客 [2] => 1 [5] => http://www.jb51.net )
Einige Array-Elemente, die in Boolean FALSE konvertiert werden können, wurden entfernt, was uns dazu bringt, ein gültiges Array zum Filtern zu erhalten.
Das obige ist der detaillierte Inhalt vonPHP verwendet die Callback-Funktion, um die Elemente in der Array-Funktion array_filter() zu filtern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!