0

php (json_decode) によってデコードされ、html ページにエコー バックされる json データを含むフィードを取得しています。

フィードには\n文字が含まれていますが、PHP が文字をエコーアウトすると、HTML はそれらを改行または改行として認識しないため、HTML テキストは 1 つの大きなテキストの壁として表示されます。


JSONデータが含まれているときにphpをエコーアウトするために何をすべきかについて、誰かが私にヒントを与えることができますか\n?

たとえば、json データには "FRIDAY THROUGH WEDNESDAY.\n\nMORE RAIN IS" が含まれている可能性がありますが、HTML が生成されると、"FRIDAY THROUGH WEDNESDAY. MORE RAIN IS" がすべて同じ行に表示されます。

ありがとう!

4

3 に答える 3

2

試す:

echo nl2br($json_string);
于 2013-06-21T14:49:05.750 に答える
1

'\n' を HTML の同等の br タグに置き換える必要があります。

次の方法で文字列を出力できます。

echo str_replace("\n", "<br />", $yourString);
于 2013-06-21T14:46:22.780 に答える
0

php.netから:

http://fr2.php.net/manual/fr/function.json-decode.php#112084

function json_decode_nice($json, $assoc = TRUE){
    $json = str_replace(array("\n","\r"),"\\n",$json);
    $json = preg_replace('/([{,]+)(\s*)([^"]+?)\s*:/','$1"$3":',$json);
    $json = preg_replace('/(,)\s*}$/','}',$json);
    return json_decode($json,$assoc);
}
于 2013-06-21T14:48:08.383 に答える