我收到一个包含json数据的feed,然后由php(json_decode)解码并回显到我的html页面。
Feed包含\n
个字符,但是当PHP回显它们时,HTML不会将它们识别为新行或换行符,因此HTML文本只是一个大的文本墙。
当json数据中有\n
时,有人可以给我一个提示,告诉我应该做些什么来让php回显或类似的东西?
作为一个例子,json数据可能包含“星期三星期五。\ n \ n更多雨。”但是当生成HTML时,它看起来就像是“星期五星期五。更多的雨”都在同一条线上。 / p>
谢谢!
答案 0 :(得分:1)
您必须将'\ n'替换为HTML中的等效项,即br标记。
您可以通过以下方式输出字符串:
echo str_replace("\n", "<br />", $yourString);
答案 1 :(得分:1)
尝试:
echo nl2br($json_string);
答案 2 :(得分: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);
}