
DOMXPath::evaluate 메서드의 첫 번째 인자로 사용하는 XPath 표현식은 XML 문서에서 데이터를 추출하는 데 사용됩니다.
XPath 표현식은 XML 문서의 요소, 속성, 텍스트를 선택하는 데 사용됩니다. 예를 들어, XML 문서 안의 'name' 요소의 값을 가져오고자 할 때, 다음과 같이 XPath 표현식을 작성할 수 있습니다.
#hostingforum.kr
php
$xml = new DOMDocument();
$xml->loadXML('John');
$xpath = new DOMXPath($xml);
$name = $xpath->evaluate('string(//name)');
위의 코드에서 '//name'은 XML 문서 안의 모든 'name' 요소를 선택합니다. 이 표현식은 XML 문서 안의 첫 번째 'name' 요소의 값을 가져오지 않고, 모든 'name' 요소의 값을 가져옵니다.
만약 XML 문서 안에 여러 개의 'name' 요소가 존재할 때, 모든 요소의 값을 가져오고 싶다면, 다음과 같이 XPath 표현식을 작성할 수 있습니다.
#hostingforum.kr
php
$xml = new DOMDocument();
$xml->loadXML('JohnJane');
$xpath = new DOMXPath($xml);
$names = $xpath->evaluate('//name');
foreach ($names as $name) {
echo $name->nodeValue . "n";
}
위의 코드에서 '//name'은 XML 문서 안의 모든 'name' 요소를 선택합니다. 이 표현식은 XML 문서 안의 모든 'name' 요소의 값을 가져옵니다.
또한, XPath 표현식에서 '//'은 문서 루트부터 시작하여 모든 요소를 선택합니다. 만약 특정 요소의 자식 요소를 선택하고 싶다면, 다음과 같이 XPath 표현식을 작성할 수 있습니다.
#hostingforum.kr
php
$xml = new DOMDocument();
$xml->loadXML('John');
$xpath = new DOMXPath($xml);
$name = $xpath->evaluate('//person/name');
echo $name->nodeValue . "n";
위의 코드에서 '//person/name'은 XML 문서 안의 'person' 요소의 자식 요소인 'name' 요소를 선택합니다. 이 표현식은 XML 문서 안의 첫 번째 'person' 요소의 자식 요소인 'name' 요소의 값을 가져옵니다.
XPath 표현식은 XML 문서에서 데이터를 추출하는 데 사용됩니다. XPath 표현식을 작성할 때, XML 문서의 구조와 데이터를 잘 이해하고, XPath 표현식을 작성할 때는 반드시 테스트를 하여 올바른 결과를 얻을 수 있도록 해야 합니다.
2025-07-20 01:36