Using PHP's array_filter() Function to Filter Arrays
This article explains how PHP's array_filter() function works, details its parameters, and provides clear code examples for filtering even numbers and removing empty values from associative arrays, helping developers apply flexible array filtering in real-world backend projects.
In PHP programming, arrays are a fundamental data type, and filtering array elements is a common operation; PHP provides the useful array_filter() function to accomplish this.
The array_filter() function applies a callback to each element of an array, keeping elements that satisfy the condition (callback returns true) and returns a new filtered array.
The function signature is:
array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )Parameter description:
$array : the array to be filtered.
$callback : a user‑defined function that receives an element and returns a boolean; true keeps the element, false discards it. If omitted, the function removes elements that are falsey.
$flag : optional, determines how many arguments are passed to the callback. Default 0 passes only the value; a value greater than 0 also passes the key as the second argument.
Below are two examples demonstrating the use of array_filter() :
Example 1: Filtering even numbers
<?php
// Original array
$arr = [1, 2, 3, 4, 5, 6];
// Filtering function
function filter_even($value) {
return ($value % 2 == 0);
}
// Apply array_filter()
$new_arr = array_filter($arr, 'filter_even');
// Output result
print_r($new_arr);
?>Running the code outputs:
Array
(
[1] => 2
[3] => 4
[5] => 6
)Example 2: Filtering empty values from an associative array
<?php
// Original array
$arr = [
'name' => 'Tom',
'age' => '',
'gender' => 'male',
'email' => ''
];
// Filtering function
function filter_empty($value) {
return ($value !== '');
}
// Apply array_filter()
$new_arr = array_filter($arr, 'filter_empty');
// Output result
print_r($new_arr);
?>The output is:
Array
(
[name] => Tom
[gender] => male
)In summary, array_filter() is a versatile PHP function that simplifies array filtering by allowing custom callback logic, making it easy to implement a wide range of filtering scenarios in backend development.
php中文网 Courses
php中文网's platform for the latest courses and technical articles, helping PHP learners advance quickly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.