2011-12-13 2 views

답변

3

예 사용 XPath는

$ XML->의 XPath ('// DIV - : 당신이 같은이있는 경우 Xpath에 대해 언급

또 다른 대답
그것은, 노드의 복제를 돌려줍니다 ');

여기 $ xml은 SimpleXML 개체입니다. 이 예에서

모든 'div의'요소

+0

감사합니다! 나는 전에 그것을 시도했다, 그러나 (왜 지옥은 이제까지) 작동하지 않았다. 이제 다시 시도하고 작동합니다. 어쩌면 캐시 문제 일 수 있습니다. : S – headacheCoder

+0

아마 슬래시를 하나만 사용하셨습니까? 모든 요소를 ​​찾으려면 2 //를 사용해야합니다. –

1
$fname = dirname(__FILE__) . '\\xml\\crRoll.xml'; 
    $dom = new DOMDocument; 
    $dom->load($fname, LIBXML_DTDLOAD|LIBXML_DTDATTR); 
    $root = $dom->documentElement;      

    $xpath = new DOMXpath($dom); 
    $xpath->registerNamespace('cr', "http://www.w3.org/1999/xhtml"); 
    $candidateNodes = $xpath->query("//cr:break"); 

    foreach ($candidateNodes as $child) { 
    $max = $child->getAttribute('tstamp'); 
    } 

의 배열을 얻을 것이다이 발견 한 모든 BREAK 노드 (tstamp의 ATTR) XPath를 사용하여 ...

관련 문제