PHP在循环问题中创建多个DOMDocuments

时间:2016-01-17 20:51:05

标签: php ajax dom document

我有一个要添加到基本网址末尾的项目列表,并尝试从循环中的每个生成的网址中检索html。但是,我遇到了一个错误,而且我一直在努力修复它!

当前代码:

($ items只是一个字符串数组)

$output = "";

foreach($items as $item) {
    $url = $baseUrl . $item;
    $dom = new DOMDocument();
    libxml_use_internal_errors(true);
    $dom->loadHTMLFile($url);
    $output = $output . json_encode($dom->saveHTML());
}

echo $output;

有谁可以告诉我为什么我不能加载这样的多个HTML文档?

恼人地我没有得到任何PHP错误日志,而ajax xhr文本没有提供任何有用的信息,它只是返回加载的第一个html页面的一部分作为'错误&# 39; (它似乎能够加载数组中的第一项,但随后失败)

1 个答案:

答案 0 :(得分:0)

你快到了。这样就可以解决这个问题:

$output = "";

foreach($items as $item) {    
    $url = $baseUrl . $item;
    $dom = new DOMDocument();
    libxml_use_internal_errors(true);
    $dom->loadHTMLFile($url);    
    $output .= json_encode($dom->saveHTML(),JSON_ERROR_UTF8);    
}

echo $output;