# REST_SANITIZE_ARRAY() │ WP 5.5.0
Функция **REST_SANITIZE_ARRAY()** преобразует значение, похожее на массив, в настоящий массив. Это полезно для работы с данными в WordPress, особенно при обработке запросов через REST API.
### Использование функции
Функция вызывается следующим образом:
```php
rest_sanitize_array( $maybe_array );
Параметры
- $maybe_array (mixed) (обязательный): значение, которое мы хотим проверить и преобразовать.
Пример работы функции
Пример 1
Если мы передаем строку с именами, разделенными запятыми:
rest_sanitize_array( 'Vova,Misha,Timur,Dima' );
Возвращаемое значение:
Array (
[0] => Vova
[1] => Misha
[2] => Timur
[3] => Dima
)
Пример 2
Если передаем ассоциативный массив:
rest_sanitize_array( [
'name' => 'Olga',
'age' => 5
] );
Возвращаемое значение:
Array (
[0] => Olga
[1] => 5
)
В этом случае функция вернет только значений из массива, игнорируя ключи.
Как это работает
Функция rest_sanitize_array
принимает переменную и проверяет, является ли она "скалярной" (то есть, не массивом). Если это так, она разбивает строку на части с помощью функции wp_parse_list
, которая разделяет строки по запятым. Если переменная не массив и не строка, возвращается пустой массив. Если переменная — массив, функция приводит его к "нумерованному" массиву, где ключи будут обычными числами (0, 1, 2 и т.д.).
Код функции
Вот как выглядит реализация этой функции:
function rest_sanitize_array( $maybe_array ) {
if ( is_scalar( $maybe_array ) ) {
return wp_parse_list( $maybe_array );
}
if ( ! is_array( $maybe_array ) ) {
return array();
}
// Приведение к нумерованному массиву
return array_values( $maybe_array );
}
Изменения в версии
- С версии 5.5.0: Функция была введена.
Связанные функции
- REST API - это набор функций для работы с REST-запросами:
get_rest_url()
register_rest_field()
register_rest_route()
rest_ensure_response()
rest_is_boolean()
rest_output_link_wp_head()
rest_stabilize_value()
rest_url()
WP_Application_Passwords::create_new_application_password()
wp_is_application_passwords_available()
wp_is_rest_endpoint()
Эти функции позволят вам более эффективно работать с REST API и обрабатывать запросы в WordPress.