私は製品情報を持つ製品データを持っています。実際には配列形式ですが、json_encode
関数を使用してJSON応答に変換しようとしました。JSONはHTMLタグを持つデータをエンコードする方法は?
問題は、製品の説明の中にいくつかのHTMLコードがあるため、いくつかの行が表示されていることです。
リンク:http://superwholesalebazaar.xyz/wocom.php
なぜそれがラインを示すのか? JSONレスポンスではありませんか?
ありがとうございます!
私は製品情報を持つ製品データを持っています。実際には配列形式ですが、json_encode
関数を使用してJSON応答に変換しようとしました。JSONはHTMLタグを持つデータをエンコードする方法は?
問題は、製品の説明の中にいくつかのHTMLコードがあるため、いくつかの行が表示されていることです。
リンク:http://superwholesalebazaar.xyz/wocom.php
なぜそれがラインを示すのか? JSONレスポンスではありませんか?
ありがとうございます!
データのHTML部分に、<del>
要素のような行取り消し線スタイルが当然含まれている要素があるため、その行が表示されます。
しかし、jsonのレスポンスからtext/html型として送信すると、ブラウザはHTMLとしてすべてをレンダリングし、jsonエンコードはHTMLの文字の一部をエスケープするので、いくつかの要素正しく閉じられていない。
私はここであなたは、PHPでこれを行うことができる方法であるあなたがやりたいことは、「JSON」に設定されているコンテンツタイプにこの応答を送信すると思い
:
header('Content-Type: application/json');
// echo your json content here
それは素晴らしいアイデアです。 – unixmiah
あなたより。申し訳ありませんが、私はあなたの答えをupvoteまたは選択することはできません。 :( –
@MariaKari thats ok、あなたはそれを選択することができますが、それはあなたがそれを理解したように見えます;) – JoeMoe1984
ブラウザのがやってHTMLを期待しますそれを解釈するのに最適です。あなたはソース –
を見たいと思っています。あなたは '
\ u20b9'を持っていて、何らかの' strike tag'を持っています。すべてのhtmlタグを取り除くには、PHPで 'strip_tags'関数を使う必要があります。データをサニタイズするために他の文字を取り除いてください。その結果、きれいなjsonデータが得られます。 – unixmiahheader( 'Content-Type:application/json')を追加するだけです。あなたの時間によくあなたに感謝:) –