PHP에서 DOMDocument
클래스를 사용하여 'body'요소의 모든 자식 노드를 제거합니다. 다음과 같이 내 코드는 그것은 나를PHP에서 자식 노드를 제거하는 방법
C에서 '오류를 찾을 수 없음'catch되지 않은 예외 메시지 '예외 : DOMException'오류 제공
$body->removeChild($child);
에서$doc=new DOMDocument(); $doc->loadHTMLFile("a.html"); $wrapperDiv=$doc->createElement('div'); $wrapperDiv->setAttribute('class','wrapper'); $body= $doc->getElementsByTagName('body')->item(0); foreach($body->childNodes as $child) { if($child->nodeName != "#text") { $wrapperDiv->appendChild($child); $body->removeChild($child); } } $body->appendChild($wrapperDiv); $doc->saveHTMLFile('aaa.html');
: \ XAMPP \ htdocs를 \ 테스트 \의 dum2.php을 : 70 스택 추적 : # 0 C : \ xampp \ htdocs \ test \ dum2.php (70) : 에 던져진 DOMNode-> removeChild (Object (DOMElement)) # 1 {main} C : \ xampp \ htdocs \ test \ dum2.php on line 70
나는 오랫동안이 문제로 어려움을 겪어 왔지만이 DOMDocument
클래스를 처음 사용하기 때문에 문제가 무엇인지 파악할 수 없었다. '본문'요소에는 어린이가 포함됩니다!
나는 그것을 시험해 보았다. 자식 노드는 body 요소에서 제거되지 않습니다. 심지어 '$ wrapperDiv-> appendChild ($ child);를 제거하더라도 ... – samach
@Salman : 자녀가 있는지 여부는 어떻게 테스트하고 있습니까? –
문제의 코드를 편집했습니다. a.html 파일에 div 및 img 태그가 포함되어 있습니다 ... – samach