dongzan7016 2012-11-30 16:13
浏览 152
已采纳

PHP json_encode html元素包含不需要的空格

I have a problem here.

index.php

ob_start();
include '../view/user.php';
$include = ob_get_clean();

echo json_encode(array(
"success" => true,
"status" => "ok",
"data" => $include));

user.php

<div>
<h2 class='workspace-name'>
<?php echo $name; ?>
</h2>
</div>

The problem is if I indent the HTML element in user.php properly (for readability), there will be a lot of \t\t\t, provided I use jquery.get to get JSON dataType.

How do I get rid of the /r/t/n? Although it doesn't display on screen I don't feel right about it. Is there any better solution? Any question please drop in the comment I will edit this. thanks

  • 写回答

3条回答 默认 最新

  • douyun1972 2012-11-30 16:17
    关注

    Why not use str_replace() to replace those characters.

    "data" => str_replace(array("
    ","","\t"),'',$include)));
    

    EDIT: Or use the following when dealing with HTML like <a\thref='#'>Click Here</a> (thanks to @Salman A for pointing this out)

    "data" => str_replace(array("
    ","","\t"),' ',$include)));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?