Я создаю JSON строку из массива PHP. Я закодировал ее с помощью json_encode()
.
$data = array(
'title' => 'Example string\'s 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's with "special" characters" }
Ввод этого результата в http://jsonlint.com/ возвращает ошибку. Удаление двойных кавычек вокруг "special" проверяет строку.
Какой лучший способ создать JSON строку из PHP и правильно экранировать ее для использования в JS файле?