wp_parse_id_list()
Обрабатывает/очищает массив чисел (ID) или строку где числа разделены запятыми или пробелами. Вернет массив чисел.
Функция разбивает строку на ID и обрабатывает каждый ID: превращает его в число. В конце из итогового массива удаляются одинаковые ID.
Работает на основе: wp_parse_list()
1 раз — 0.000044 сек (очень быстро) | 50000 раз — 0.53 сек (очень быстро)
Хуков нет.
Возвращает
int[]
. Очищенный массив с ID (числами).
Использование
wp_parse_id_list( $list );
- $list(массив/строка/число) (обязательный)
- Список id. Массив или строка где числа разделены запятыми или пробелами.
Примеры
#1 Получим список ID из строки
Предположим нам в функцию передаются список чисел (ID) в виде строки. Числа разделены пробелами. Нам нужно создать массив из этих чисел:
$str_ids = '1 2 , 3 4 5, 6'; $ids = wp_parse_id_list( $str_ids ); /* Получим: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) */
#2 Получим только числа из массива
Допустим у нас есть массив данных из чисел и строк и нам нужно получить из него только числа
$array = array( 1, '2', '2', 'foo', ' 3', '4foo', 05, 'bar', -6 ); $ids = wp_parse_id_list( $array ); /* Получим: Array ( [0] => 1 [1] => 2 [3] => 0 [4] => 3 [5] => 4 [6] => 5 [8] => 6 )
#3 Если передать только число
$ids = wp_parse_id_list( 1 ); /* Array ( [0] => 1 ) */
Список изменений
С версии 3.0.0 | Введена. |
С версии 5.1.0 | Refactored to use wp_parse_list(). |
Код wp_parse_id_list() wp parse id list WP 6.6.1
function wp_parse_id_list( $input_list ) { $input_list = wp_parse_list( $input_list ); return array_unique( array_map( 'absint', $input_list ) ); }