XPath를 기반으로 XML 노드를 업데이트해야하는 예제가 있습니다. SimpleXMLElement
은 XPath를 사용하여 노드를 잡고 참조 기준 형식으로 값을 업데이트함으로써이 작업을 충분히 쉽게 수행 할 수 있습니다.XPath에서 XML 생성
그러나 업데이트해야 할 노드가 실제로 존재하지 않으면이 작업이 전혀 수행되지 않습니다. 존재하지 않는 XPath와 일치하는 XML을 자동으로 생성하는 간단한 방법이 있습니까?
예 다음 XML을 감안할 때
<example>
<childNode1>green</childNode1>
</example>
, 나는 쉽게 SimpleXMLElement
로 XML을로드 한 후 $xml->xpath("example/childNode1");
을 실행하여 <childNode1>
를 얻기 위해 XPath는 명령을 실행할 수 있습니다. 그런 다음 반환 된 값 SimpleXMLElement
을 새로운 것으로 설정 한 다음 XML을 저장할 수 있습니다.
그러나 <childNode2>
과 같이 설정해야한다면 $xml->xpath("example/childNode2")
은 아무 것도 반환하지 않으며 값을 설정하거나 XML이 작성되었는지 확인할 수 없습니다.
XPath를 반복하고 값을 구문 분석하여 각 자식 노드가 있는지 확인한 다음 필요에 따라 XPath를 생성하는 좋은 방법이 있습니까?
얼마전 자바 스크립트와 비슷한 대답을 보였습니다. http://stackoverflow.com/a/26296087/2265374 – ThW