array_any()WP 6.8.0

Проверяет, соответствует ли хотя бы один элемент массива указанному условию.

Полифил функции array_any(), добавленной в PHP 8.4.

Передаёт callback-функции значение и ключ каждого элемента. Проверка прекращается после первого результата true.

1 раз — 0.0000122 сек (очень быстро) | 50000 раз — 0.03 сек (скорость света)

Хуков нет.

Возвращает

true|false.

  • true - хотя бы один элемент прошёл проверку.
  • false - ни один элемент не прошёл проверку или массив пуст.

Использование

array_any( $array, $callback ): bool;
$array(array) (обязательный)
Проверяемый массив.
$callback(callable) (обязательный)
Функция проверки вида callback( $value, $key ): bool, где $value - значение элемента, $key - его ключ.

Примеры

#1 Проверка наличия подходящего значения

Проверим, есть ли в массиве число больше 10.

$numbers = [ 4, 8, 15 ];

$has_large_number = array_any(
	$numbers,
	static function ( $value ) {
		return $value > 10;
	}
);

var_dump( $has_large_number ); // bool(true)

Список изменений

С версии 6.8.0 Введена.

Код array_any() WP 7.0.4

function array_any( array $array, callable $callback ): bool { // phpcs:ignore Universal.NamingConventions.NoReservedKeywordParameterNames.arrayFound
	foreach ( $array as $key => $value ) {
		if ( $callback( $value, $key ) ) {
			return true;
		}
	}

	return false;
}