数组到字符串转换DOM解析器

时间:2014-10-15 04:31:44

标签: php syntax domparser

我试图使用DOM解析器来获取元素的第N个实例,在这种情况下是第一个DIV CLASS元素并且只回显它。我收到错误提示:"数组到字符串转换"。我已尝试使用implode函数加入它并使其成为一个字符串,但似乎没有任何工作。我究竟做错了什么?在http://code.tutsplus.com/tutorials/html-parsing-and-screen-scraping-with-the-simple-html-dom-library--net-11856找到了这些函数,但是得不到相同的结果。

function my_function($str) {
    require_once 'libs/simple_html_dom.php';
    $html = file_get_html($str);
    foreach($html->find('div[class=copy]', 0) as $element){
        $patterns = array();
        $patterns[0] = 'some';
        $patterns[1] = 'cool';
        $replacements = array();
        $replacements[0] = 'really';
        $replacements[1] = 'super';
        $replacements[3] = ' ';ksort($patterns);ksort($replacements);
        echo str_replace($patterns, $replacements, $element);
    }
}

问题出在这里

foreach($html->find('div[class=copy]', 0) as $element)

标记

<div class="copy">somecooltext1</div>
<div class="copy">somecooltext2</div>
<div class="copy">somecooltext3</div>
<div class="copy">somecooltext4</div>
<div class="copy">somecooltext5</div>

我试图仅捕获第一个实例并回显它。

1 个答案:

答案 0 :(得分:0)

好吧我明白了

改变

foreach($html->find('div[class=copy]', 0) as $element)

$element = $html->find('div[class=copy]', 0);