Функция rest_sanitize_array()
в WordPress предназначена для преобразования входного значения в индексный массив. В этой статье мы рассмотрим алгоритм работы этой функции, её возможности и приведём примеры использования.
Описание
rest_sanitize_array()
преобразует переданное значение в индексный массив. Если преобразование невозможно, функция возвращает пустой массив.
Алгоритм работы
- Проверка на скалярное значение: Функция проверяет, является ли переданное значение скалярным с помощью PHP-функции
is_scalar()
. Скалярные типы включаютint
,float
,string
иbool
. Если значение скалярное, оно обрабатывается функциейwp_parse_list()
и возвращается в виде массива. - Проверка на массив: Если переданное значение не скалярное, функция проверяет, является ли оно массивом. Если это массив, функция преобразует его значения в индексный массив и возвращает его.
- Обработка других типов: Если значение не является ни скалярным, ни массивом (например, объект или ресурс), функция возвращает пустой массив.
rest_sanitize_array( $maybe_array );
Параметры
$maybe_array
(обязательный): Значение для преобразования, может быть строкой, массивом или скалярным типом.
Возвращаемое значение
Функция возвращает массив, который может быть пустым или индексным, в зависимости от переданного значения.
Преобразование строки
$result = rest_sanitize_array( 'Елена,Миша,Тимур,Дима' );
/* Результат:
Array (
[0] => Елена
[1] => Миша
[2] => Артур
[3] => Дима
)
*/
В этом примере строка, содержащая имена, преобразуется в индексный массив.
Преобразование ассоциативного массива
$result = rest_sanitize_array( [
'name' => 'Ольга',
'age' => 5
] );
/* Результат:
Array (
[0] => Ольга
[1] => 5
)
*/
Здесь ассоциативный массив преобразуется в индексный массив, содержащий только значения.
Примечания
- Функция основана на
wp_parse_list()
. - Функция не имеет хуков.
Заключение
Функция rest_sanitize_array()
полезна для преобразования различных типов данных в индексные массивы, что может быть необходимо в различных сценариях обработки данных в WordPress.