2012-03-09 2 views
0

Это должно быть очень просто. Я загружаю php через DOMDocument();Как вывести текст элемента ById в DOM?

$doc = new DOMDocument(); 
    $doc->loadHTML($html); 
    $el = $doc->getElementById('somethingId'); 

Допустим, у меня есть

<html><head></head><body><div id="somethingId">my 
<span style="background:red">something else</span> 
information</div></body></html> 

Q1. Как отгонять то, что внутри этого элемента («моя информация») от $ el?

Q2. Как эхо вводить внутри и включая данные о масштабах (например, innerHTML в javascript)?

Ответ на Q2:

$ дети = $ el-> ChildNodes;

foreach ($children as $child) { 

    $innerHTML .= $child->ownerDocument->saveXML($child); 

} 

эхо $ innerHTML

+1

эхо '$ el-> nodeValue' –

ответ

1

Вы должны сделать

echo ($el->nodeValue); 
+0

нужны кронштейны? Также я добавил еще один вопрос. Вы можете помочь. Спасибо –

+0

@ TroodoN-Mike: Нет, скобки не нужны. эхо не является функцией - это языковая конструкция. –

0
if (!is_null($el)) { 
     $content = $el->nodeValue; 

     if (empty($content)) { 
      $content = $el->textContent; 
     } 

     echo $content; 
    } 
Смежные вопросы