json_encode() スラッシュのエスケープ
Instagram から JSON をデコードする場合、再エンコードおよびキャッシュ時にスラッシュがエスケープされることがよくあります。データ。これは、json_encode() がデフォルトでスラッシュを自動的にエスケープするためです。
スラッシュ エスケープの無効化
幸いなことに、PHP 5.4 では、 JSON_UNESCAPED_SLASHES フラグ。使用方法は次のとおりです。
json_encode($data, JSON_UNESCAPED_SLASHES);
このフラグを設定すると、json_encode() はスラッシュをエスケープせずに保持します。
Web/HTML コンテキストに関する注意
Web/HTML コンテキスト (例: JSON データをブラウザーに送信すると、セキュリティ上の脆弱性が発生する可能性があります。エスケープされたスラッシュは、クロスサイト スクリプティング (XSS) 攻撃を防ぐために不可欠です。したがって、このようなシナリオでは JSON_UNESCAPED_SLASHES の使用を慎重に検討する必要があります。
5.4 より前の PHP バージョンの場合
5.4 より前の PHP バージョンを使用している場合は、 json_encode_no_backslashes() のような既存の関数を変更できます (次の場所で入手可能) https://snippets.dzone.com/posts/show/7487) ニーズに合わせて。
以上がPHP で `json_encode()` がスラッシュをエスケープしないようにするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。