json_encode无法使用strip_tags

时间:2016-07-12 12:43:12

标签: php json

我想在JSON中插入一些列表输入,但看起来很奇怪。我使用strip_tags来修复内存泄漏。这是代码和输出的JSON

代码:

<?php
echo '<meta charset="utf-8">';
include_once('libs/simplehtmldom/simple_html_dom.php');
$html = file_get_html('https://hugo.events/event/2017');
// Find all links 
foreach($html->find('ul#EventLandinLineUpList') as $element)
    $encoded = strip_tags($element);
    echo json_encode($encoded);

这是输出的JSON:

"\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tFEDDE LE GRAND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tKENSINGTON\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tTYPHOON\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tSUNDAY SUN\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tBL\u00d8F\n\t\t\t\t\t\t\t\t\t\t\t\t\t"

我希望有人可以帮助我。提前致谢

2 个答案:

答案 0 :(得分:0)

您可以使用trim()删除那里的空格。

答案 1 :(得分:0)

最终我使用了:preg_replace。

这是最终的代码:

<?php
echo '<meta charset="utf-8">';
include_once('libs/simplehtmldom/simple_html_dom.php');
$html = file_get_html('https://hugo.events/event/2152');
// Find all links 
foreach($html->find('ul#EventLandinLineUpList') as $element)
    $stripped = strip_tags($element);
    $stripped = preg_replace('/\s+/', ' ', $stripped);
    echo json_encode($stripped);