PHP 8.1: Функция array_is_list() для определения, является ли массив списком

ARRAY_IS_LIST() │ WP 6.5.0

Функция array_is_list() добавлена в PHP 8.1 как полифил, чтобы определить, является ли данный массив списком.

Что такое массив-список?

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

Важно!

Функция не использует хуки.

Возвращаемое значение

Функция возвращает:

  • true, если массив является списком
  • false, если это не так

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

Функция вызывается следующим образом:

array_is_list( $arr );

Где $arr (массив) — это массив, который мы хотим проверить.

Примеры

Вот несколько примеров работы функции:

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.

Код функции

В WordPress функция array_is_list() выглядит так:


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;

}

Связанные функции

Существует несколько вспомогательных функций, которые могут оказаться полезными:

  • array_key_first()
  • array_key_last()
  • calendar_week_mod()
  • checked()
  • disabled()
  • fetch_feed()
  • get_page_uri()
  • wp_die()
  • wp_html_excerpt()
  • WP_List_Util()
  • wp_parse_str()
  • wp_redirect()
  • wp_slash()
  • wp_trim_words()

Полифилы PHP

Функция array_is_list() может использовать другие полифилы, если у вас более старая версия PHP:

  • is_countable()
  • is_iterable()
  • str_contains()
  • str_ends_with()
  • str_starts_with()
  • wp_basename()
  • wp_filesize()
  • wp_generate_uuid4()
  • wp_json_encode()
  • wp_mkdir_p()
  • wp_rand()
  • wp_sprintf()

Проверки

Также есть функции для выполнения различных проверок:

  • is_admin_bar_showing()
  • is_blog_installed()
  • is_email()
  • is_php_version_compatible()
  • is_serialized()
  • is_serialized_string()
  • is_wp_error()
  • is_wp_version_compatible()
  • seems_utf8()
  • wp_doing_ajax()
  • wp_is_https_supported()
  • wp_is_json_request()
  • wp_is_numeric_array()
  • wp_is_using_https()
  • wp_validate_boolean()

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *