Я создаю строку JSON из массива PHP. Я закодировал его с помощью json_encode()
.
$data = array(
'title' => 'Example string\ with "special" characters'
);
$data = json_encode( $data );
$data
локализуется с помощью wp_localize_script()
и доступен через глобальную переменную data
.
В JS файле я могу получить доступ к следующей информации:
var data = data.replace( /"/g, '"' ),
jsonData = jQuery.parseJSON( data );
console.log( jsonData );
В результате получается результат:
{ "title":"Example string with "special" characters" }
Ввод этого результата в http://jsonlint.com/ возвращает ошибку. Удаление двойных кавычек вокруг "special" проверяет строку.
Каков наилучший способ создать строку JSON из PHP и правильно ее избежать для использования в JS файле?