라이브러리

[PHP] SimpleXMLElement::xpath - XML ​​데이터에 대한 XPath 쿼리 실행




SimpleXMLElement::xpath

PHP의 SimpleXMLElement 클래스는 XML 문서를 처리하기 위한 클래스입니다. 이 클래스는 XML 문서를 분석하고, 특정 요소나 속성을 찾을 수 있도록 도와줍니다. SimpleXMLElement::xpath 메서드는 XML 문서에서 XPath 표현식을 사용하여 요소를 찾는 데 사용됩니다.

XPath 표현식


XPath(XPath Language) 은 XML 문서에서 요소를 찾기 위한 언어입니다. XPath 표현식은 XML 문서의 구조를 기반으로 요소를 찾는 데 사용됩니다. 예를 들어, XML 문서의 루트 요소의 자식 요소를 찾기 위해 다음과 같은 XPath 표현식을 사용할 수 있습니다.

#hostingforum.kr
xml

//root/child



SimpleXMLElement::xpath 예제


다음 예제는 SimpleXMLElement::xpath 메서드를 사용하여 XML 문서에서 요소를 찾는 방법을 보여줍니다.

#hostingforum.kr
php

$xml = new SimpleXMLElement('helloworld');



// XPath 표현식: 루트 요소의 자식 요소를 찾기

$xpath = '//child';

$result = $xml->xpath($xpath);



// 결과를 출력

foreach ($result as $item) {

    echo $item . "
";

}



이 예제에서는 XML 문서의 루트 요소의 자식 요소를 찾기 위해 XPath 표현식 `//child`를 사용합니다. 결과는 다음과 같습니다.

#hostingforum.kr


hello

world



XPath 표현식 예제


다음 예제는 다양한 XPath 표현식을 사용하여 XML 문서에서 요소를 찾는 방법을 보여줍니다.

#hostingforum.kr
php

$xml = new SimpleXMLElement('helloworld');



// XPath 표현식: 루트 요소의 자식 요소를 찾기

$xpath = '//child1';

$result = $xml->xpath($xpath);



// 결과를 출력

foreach ($result as $item) {

    echo $item . "
";

}



// XPath 표현식: 루트 요소의 자식 요소 중 첫 번째 요소를 찾기

$xpath = '(//child1)[1]';

$result = $xml->xpath($xpath);



// 결과를 출력

foreach ($result as $item) {

    echo $item . "
";

}



// XPath 표현식: 루트 요소의 자식 요소 중 두 번째 요소를 찾기

$xpath = '(//child1)[2]';

$result = $xml->xpath($xpath);



// 결과를 출력

foreach ($result as $item) {

    echo $item . "
";

}



// XPath 표현식: 루트 요소의 자식 요소 중 이름이 child2인 요소를 찾기

$xpath = '//child2';

$result = $xml->xpath($xpath);



// 결과를 출력

foreach ($result as $item) {

    echo $item . "
";

}



이 예제에서는 다양한 XPath 표현식을 사용하여 XML 문서에서 요소를 찾는 방법을 보여줍니다. 결과는 다음과 같습니다.

#hostingforum.kr


hello

hello

world

world



참고


* [SimpleXMLElement::xpath](https://www.php.net/manual/en/simplexmlelement.xpath.php)
* [XPath Language](https://www.w3.org/TR/xpath/)
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 187 페이지

검색

게시물 검색