PHP配列からJSON文字列を作成しています。を使用してエンコードしました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」の前後の二重引用符を削除すると、文字列が検証されます。
PHPからJSON文字列を作成し、JSファイルで使用するために適切にエスケープするための最良の方法は何ですか?