Использование функции wp_parse_id_list() в WordPress: руководство и примеры использования

Использование функции 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. Она позволяет легко преобразовывать строки и массивы в формат, который удобно использовать в коде. Если вам нужно быстро и эффективно обрабатывать списки чисел, обязательно обратите внимание на эту функцию.

Leave a Reply

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