wp_json_encode()
Кодує передану змінну в формат JSON. Перевіряє рядки та переводить їх у UTF-8.
Змінна, що передається, може містити будь-який тип даних: масив, рядок, об’єкт, число і т.д.
Працює на основі PHP функції json_encode() .
Основа для:
wp_send_json()
wp_send_json()
1 раз – 0.000001 сек
(швидкість світла) | 50000 разів – 0.09 сек
(швидкість світла) |
PHP 7.2.5, WP 4.9.8
(швидкість світла) | 50000 разів – 0.09 сек
(швидкість світла) |
PHP 7.2.5, WP 4.9.8
Хуків немає.
Повертає
Строку|false. Логічне/рядок: рядок JSON або false, якщо не вдалося отримати рядок.
Використання
wp_json_encode ($ data, $ options, $ depth);
- $data
(змішаний) (обов’язковий) - Змінна містить дані, які потрібно перетворити на рядок JSON.
- $options
(число) Опції, які будуть передані до функції PHP json_encode() .
Константи об’єднуються через
|(бітова маска):JSON_HEX_QUOT JSON_HEX_TAG JSON_HEX_AMP JSON_HEX_APOS JSON_NUMERIC_CHECK JSON_PRETTY_PRINT JSON_UNESCAPED_SLASHES JSON_FORCE_OBJECT JSON_PRESERVE_ZERO_FRACTION JSON_UNESCAPED_UNICODE JSON_PARTIAL_OUTPUT_ON_ERROR
Значення кожної константи пояснюється на сторінці JSON констант .
За замовчуванням: 0
- $depth
(число) - Максимальна глибина до якої оброблятиметься $data. Має бути більше 0.
За замовчуванням: 512
Приклади
#1 Демонстрація роботи wp_json_encode()
wp_json_encode('one'); // "one"
wp_json_encode(2); // 2
wp_json_encode (array (1, 'two')); // [1, "two"]
wp_json_encode( (object) array( 1, 'two' ) ); // {"0":1,"1":"two"}
список змін
| З версії 4.1.0 | Введено. |
| З версії 5.3.0 | Досить довгі handles support for PHP < 5.6. |
Код wp_json_encode() wp json encode WP 6.0.2
function wp_json_encode( $data, $options = 0, $depth = 512 ) {
$ json = json_encode ($ data, $ options, $ depth);
// If json_encode() був successful, no need to do more sanity checking.
if ( false !== $json ) {
return $json;
}
try {
$ data = _wp_json_sanity_check ($ data, $ depth);
} catch (Exception $ e) {
return false;
}
return json_encode ($ data, $ options, $ depth);
}