array_is_list()WP 6.5.0

Проверяет, является ли массив списком.

Массив считается списком, если его ключи состоят из последовательных чисел от 0 до count($array)-1.

Это полифил PHP функции array_is_list(), добавленной в PHP 8.1.

Хуков нет.

Возвращает

true|false. true - массив является списком, false - нет.

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

array_is_list( $arr );
$arr(array) (обязательный)
Массив для проверки.

Примеры

0

#1 Пример использования array_is_list()

array_is_list( [] ); // true
array_is_list( [ 'apple', 2, 3 ] ); // true
array_is_list( [ 0 => 'apple', 'orange' ] ); // true

// Массив начинается не с 0
array_is_list( [ 1 => 'apple', 'orange' ] ); // false

// Ключи массива не по порядку
array_is_list( [ 1 => 'apple', 0 => 'orange' ] ); // false

// Ключи массива не являются целыми числами
array_is_list( [ 0 => 'apple', 'foo' => 'bar' ] ); // false

// Непоследовательные ключи
array_is_list( [ 0 => 'apple', 2 => 'bar' ] ); // false

Заметки

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

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

Код array_is_list() WP 6.7.1

function array_is_list( $arr ) {
	if ( ( array() === $arr ) || ( array_values( $arr ) === $arr ) ) {
		return true;
	}

	$next_key = -1;

	foreach ( $arr as $k => $v ) {
		if ( ++$next_key !== $k ) {
			return false;
		}
	}

	return true;
}