PHP 8.4 released the array_any to test if at least one element matches a condition.
Table of Content
Understand the array_any Function in PHP
The array_any
checks elements in an array. It returns true if one element passes the test. It returns false if no element passes the test.
The syntax looks like this:
array_any(array $array, callable $callback)
$array
: the array you want to check.$callback
: the test function that runs on each element.
The function moves through each array element in order. It runs the callback with the element. The function stops when the callback returns true once. The function then returns true. If no element passes, the function returns false.
Here is a quick example:
$numbers = [2, 4, 6, 7];
$result = array_any($numbers, fn($n) => $n % 2 !== 0);
var_dump($result);
This code checks if at least one number is odd. It finds that 7 is odd, so the function returns true.
So, how to implement PHP array_any in your code?
Not all PHP versions have this function. You can write your own function if the function does not exist with this code:
if( !function_exists( 'array_any' ) ) {
function array_any(array $array, callable $callback): bool {
foreach ($array as $value) {
if ($callback($value)) {
return true;
}
}
return false;
}
}
This custom code runs the same logic. It checks each element and exits early once a match appears.
The Difference Between array_any and Built-in Functions in PHP
The array_any
looks like array_filter
or in_array
, but the purpose is different. array_any
only checks if a condition passes for one element.
Here is a table that shows key differences:
Function | Purpose | Return Type |
---|---|---|
array_any | Create an array with only matching elements | Boolean |
array_filter | Create array with only matching elements | Array |
in_array | Check if value exists in array | Test if any element passes the condition |
Use array_any
when you only need a yes or no check. Do not use it to collect results.
Examples of array_any Function in PHP
Check Even Numbers:
$nums = [1, 3, 5, 8];
$result = array_any($nums, fn($n) => $n % 2 === 0);
var_dump($result); // bool(true)
This code tests if the array has at least one even number, and the function finds 8 as even, so it returns true.
Check Strings for a Letter:
$words = ["hat", "dog", "cat"];
$result = array_any($words, fn($w) => strpos($w, "a") !== false);
var_dump($result); // bool(true)
This code checks each string to see if it holds the letter “a”. The function finds “hat” and “cat”, so it returns true.
Validate User Ages:
$ages = [12, 15, 20];
$result = array_any($ages, fn($a) => $a >= 18);
var_dump($result); // bool(true)
This code checks if any user is an adult with age 18 or more. The function finds 20, so it returns true.
Detect Negative Numbers:
$values = [4, -3, 7, 9];
$result = array_any($values, fn($v) => $v < 0);
var_dump($result); // bool(true)
This code scans each number to see if it is negative. The function finds -3, so it returns true.
Wrapping Up
You learned what array_any
does and how it behaves with arrays. Here is a quick recap:
- It checks if any array element passes a condition.
- It returns true at the first match.
- It returns false if no element matches.
- You can build your own function in versions without it.
- It differs from
array_filter
andin_array
because it only tests and returns a boolean.
FAQs
What is php array_any function?
function array_any($array, $callback) {
foreach ($array as $value) {
if ($callback($value)) {
return true;
}
}
return false;
}
How do I use php array_any with numbers?
$numbers = [3, 7, 15, 2];
$result = array_any($numbers, function($n) {
return $n > 10;
});
var_dump($result); // true
How does php array_any compare to array_filter?
$values = [1, 2, 3, 4];
$any = array_any($values, fn($v) => $v === 3);
// true
$filter = array_filter($values, fn($v) => $v === 3);
// [2 => 3]
Can php array_any work with strings?
$words = ["apple", "banana", "pear"];
$result = array_any($words, function($word) {
return strlen($word) > 5;
});
var_dump($result); // true
Similar Reads
The variable scope in PHP refers to the variables, functions, and classes that can be accessed within different parts of…
The whole world of PHP programming revolves around data, be it numbers, text, or more complicated structures. Each of these…
If you are working with PHP and need a way to confirm if something is indeed a file, the is_file function will…
The IF statement in PHP helps to see if a condition is true or not. If it is true, it…
In regard to the use of constants in PHP, clear understanding of their definition and use could be critical in…
A PHP float is a kind of number that has a decimal point, like 2.45 or 0.11. It’s also called…
The first appearance of PHP iterable was in PHP version ( 7.1 ) – Iterables are a powerful feature in…
PHP introduces the filter_list() function to give developers a way to check all available filters in the filter extension. This…
PHP math may sound like a pretty simple thing, but I assure you it's a set of tools that will…
PHP arrays are lists or maps that contain multiple values grouped by array keys. They may include integers, strings, booleans,…