2010-02-21 2 views
1

PHP DOMDocument를 사용하여 HTML 문서에서 특정 요소의 특정 속성을 찾으려고합니다.PHP DOMDocument, 특정 요소 찾기

특히, 고유 한 클래스 세트가있는 div가 있으며 그 안에 단일 스팬 만 있습니다. 해당 span 요소의 style 속성을 검색해야합니다.

예 :

이 예를 들어
<div class="uniqueClass"><span style="text-align: center;" /></div> 

의 uniqueClass이 문서에서 그 클래스의 인스턴스 만 존재로, 내가 문자열을 검색 할 필요가있을 것이다 :

텍스트 정렬 : 센터 ;

+0

참조 질문 http://stackoverflow.com/questions/2571232/parse-html-with-phps-html-domdocument/22345590#22345590 – lokeshsk

답변

4

당신은 DOMXPAth 클래스를 사용할 필요가

$doc = new DOMDocument; 
// We don't want to bother with white spaces 
$doc->preserveWhiteSpace = false; 

$doc->loadHTML($htmlSource); 

$xpath = new DOMXPath($doc); 

// We starts from the root element 
$query = '//div[@class= uniqueClass]/span'; 

$entries = $xpath->query($query); 

$spanStyle = $entries->current()->getAttribute('style') 
+1

내 천천히 타이핑, 그게 정확히 내가 제안하려고했던 동일한 솔루션 :) – Steve

+0

아하, "xpath". 나는 그것에 관한 필요한 연구를 할 것이다. 감사합니다. – Slyder

1
$xpath = new DomXPath($doc); 
$result = $xpath->evaluate('//div[@class=uniqueClass]/span/@style');