wp_is_numeric_array()
Проверяет является ли указанная переменная массивом с числовыми индексами.
Функция проверяет массив с любыми числовыми индексами, а не только индексный массив. Т.е. эта функция не подходит, если вам нужно, чтобы проверку проходил только индексный массив, например: [ 'one', 'two' ]
.
1 раз — 0.000016 сек (очень быстро) | 50000 раз — 0.03 сек (скорость света) | PHP 7.0.4, WP 4.4.2
Хуков нет.
Возвращает
true|false
. true если переданная переменная массив и все индексы этого массива числа. В противном случае вернет false.
Использование
wp_is_numeric_array( $data );
- $data(смешанный) (обязательный)
- Переменная, которую нужно проверить. Предполагается что передается массив.
Примеры
#1 Проверим является ли переменная массивом с числовыми индексами.
Демонстрация работы функции:
wp_is_numeric_array([]); // true wp_is_numeric_array('foo'); // false wp_is_numeric_array(['foo'=>'bar', 'foo2'=>'bar2']); // false wp_is_numeric_array(['foo', 'bar']); // true wp_is_numeric_array([ 5=>'foo', 10=>'bar' ]); // true
#2 Проверим является ли массив индексным (последовательным) массивом
Массив с числовыми индексами и индексный массив - это разные массивы. Индексный массив это массив с числовыми индексами, которые идут по порядку 0, 1, 2 ... 999
.
function is_indexed_array( array $data ){ return array_keys( $data ) === range( 0, count( $data ) - 1 ); } is_indexed_array( ['foo', 'bar'] ); // true is_indexed_array( [ 5=>'foo', 10=>'bar' ] ); // false
Список изменений
С версии 4.4.0 | Введена. |
Код wp_is_numeric_array() wp is numeric array WP 6.7.2
function wp_is_numeric_array( $data ) { if ( ! is_array( $data ) ) { return false; } $keys = array_keys( $data ); $string_keys = array_filter( $keys, 'is_string' ); return count( $string_keys ) === 0; }