DOMDocument->loadHTML 사용시 로딩시키는 html 에 DOCTYPE이 없을 경우,
getElementById 가 제대로 가져오지 못함.
아래의 결과값은 NULL
<?
$doc = new DOMDocument();
$doc->loadHTML('<html><body><div id="test">테스트</div></body></html>');
$nodeList = $doc->getElementById("test");
var_dump($nodeList);
?>
$doc = new DOMDocument();
$doc->loadHTML('<html><body><div id="test">테스트</div></body></html>');
$nodeList = $doc->getElementById("test");
var_dump($nodeList);
?>
DOCTYPE을 넣어야 제대로 object(DOMElement) 라고 결과값이 나옴
<?
$doc = new DOMDocument();
$doc->loadHTML('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><body><div id="test">테스트</div></body></html>');
$nodeList = $doc->getElementById("test");
var_dump($nodeList);
?>
$doc = new DOMDocument();
$doc->loadHTML('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><body><div id="test">테스트</div></body></html>');
$nodeList = $doc->getElementById("test");
var_dump($nodeList);
?>
'PHP' 카테고리의 다른 글
[PHP] class method를 callback에서 사용하기 (0) | 2009.11.20 |
---|---|
[PHP] DOMDocument->getElementById 이용하여 innerHTML 가져오기 (0) | 2009.11.18 |
[PHP] 여러 문자열 치환 (0) | 2009.11.18 |
[PHP] DOMDocument 이용 중 ChildNode 모조리 날리기 (0) | 2009.11.17 |
[PHP] UTF-8 한글이 entity로 변환된 것을 다시 문자로 변환시키기 (0) | 2009.11.16 |