runoops.com

PHP array_filter() 函数

PHP Array

用回调函数过滤数组中的元素:

<?php
$array1 = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5];
$array2 = [6, 7, 8, 9, 10, 11, 12];
echo "Odd :<br />";
print_r(array_filter($array1, "odd"));
echo "<br />";
echo "Even:<br />";
print_r(array_filter($array2, "even"));
function odd($var)
{
    // 返回输入整数是否为奇数(单数)
    return $var & 1;
}
function even($var)
{
    // 返回输入整数是否为偶数
    return !($var & 1);
}
?>

定义和用法

array_filter() 函数用回调函数过滤数组中的元素。

该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回给结果数组。数组键名保持不变。


语法

array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )
参数描述
array必需。规定要过滤的数组。
callback可选。规定要用的回调函数。
flag可选。决定 callback 接收的参数形式:ARRAY_FILTER_USE_KEY - callback 接受键名作为的唯一参数ARRAY_FILTER_USE_BOTH - callback 同时接受键名和键值

技术细节

返回值:返回过滤的数组。
PHP 版本:4.0.6+

更多实例

array_filter() 不使用 callback 参数时

<?php
$entry = [
    0 => 'foo',
    1 => false,
    2 => -1,
    3 => null,
    4 => '',
    5 => '0',
    6 => 0,
];
print_r(array_filter($entry));
?>

PHP Array

Captcha Code

0 笔记

分享笔记

Inline Feedbacks
View all notes