Использование функции wp_parse_id_list() в WordPress
Функция wp_parse_id_list() помогает очистить массив, который содержит идентификаторы (ID), разделенные запятыми или пробелами. Эта функция была введена в WordPress версии 3.0.0 и до сих пор используется в более поздних версиях.
Примечание
- Скорость работы: Один вызов функции занимает всего 0.000044 сек (очень быстро).
- Количество вызовов: 50000 раз — 0.53 сек (все равно очень быстро).
Возвращаемое значение
Функция возвращает массив целых чисел (Int[]), в котором находятся очищенные идентификаторы.
Как использовать
Сигнатура функции
wp_parse_id_list( $input_list );- $input_list (обязательный параметр): Это может быть массив или строка, содержащая список ID.
Примеры использования
Пример 1. Получение списка идентификаторов из строки
Предположим, что у нас есть строка с числами (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
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
)
*/Пример 3. Если передать только одно число
Если мы передаем одно число, функция все равно возвращает массив:
$ids = wp_parse_id_list( 1 );
/* Результат будет:
Array (
    [0] => 1
)
*/
// Если передать пустую строку, вернется пустой массив:
$ids = wp_parse_id_list( ''); // Результат: []Важно знать
Функция wp_parse_id_list() использует другую функцию wp_parse_list() для обработки входных данных. Это помогает эффективно обрабатывать списки, состоящие из идентификаторов, независимо от их формата.
Код функции
Вот код функции, которая находится в файле wp-includes/functions.php:
function wp_parse_id_list( $input_list ) {
$input_list = wp_parse_list( $input_list );
return array_unique( array_map( 'absint', $input_list ) );
}
Заключение
Функция wp_parse_id_list() — это полезный инструмент для работы с идентификаторами в WordPress. Она позволяет легко преобразовывать строки и массивы в формат, который удобно использовать в коде. Если вам нужно быстро и эффективно обрабатывать списки чисел, обязательно обратите внимание на эту функцию.
 
						