이 글에서는 주로 DOMDocument를 기반으로 xml을 구문 분석하고 생성하는 방법을 소개합니다. DOMDocument를 사용하여 xml 노드를 구문 분석하고 특정 예제를 기반으로 xml 파일을 생성하는 PHP의 다양한 일반적인 운영 기술을 분석합니다. Article
DOMDocument를 기반으로 PHP가 XML을 구문 분석하고 생성하는 방법을 설명합니다. 참고하실 수 있도록 자세한 내용은 다음과 같습니다.
이전에 SimpleXML 운영 xml에 대한 지식을 공유한 적이 있지만, PHP에는 simplexml 외에도 DOMDocument도 있습니다. xml을 별도로 작성하거나 xml을 생성하여 파싱하세요
1. xml 생성
DOMDocument 작업 xml은 Java의 dom4j와 비슷하다고 생각합니다. , 원칙은 동일합니다. DOMDocument의 노드와 속성이 가지와 잎으로 간주되면 DOMDocument의 DOMDocument는 루트이고 노드와 속성은 모두 이 객체 아래에 마운트됩니다. 다음 코드를 보면 매우 명확해질 것입니다
<?php $doc=new DOMDocument('1.0','utf-8'); //创建根节点 $root=$doc->createElement("StudentInfo"); //创建第一个子节点 $item=$doc->createElement("Item"); $name=$doc->createElement("name","蔡依林"); $studentnum=$doc->createElement("num","2009010502"); //创建属性(phpdom可以把任何元素当做子节点) $id=$doc->createAttribute("id"); $value=$doc->createTextNode('1'); $id->appendChild($value); //在父节点下面加入子节点 $item->appendChild($name); $item->appendChild($studentnum); $item->appendChild($id); $item2=$doc->createElement("Item"); $name2=$doc->createElement("name","潘玮柏"); $studentnum2=$doc->createElement("num","2009010505"); $id2=$doc->createAttribute("id"); $value2=$doc->createTextNode('2'); $id2->appendChild($value2); $item2->appendChild($name2); $item2->appendChild($studentnum2); $item2->appendChild($id2); $root->appendChild($item); $root->appendChild($item2); //把根节点挂载在DOMDocument对象 $doc->appendChild($root); header("Content-type: text/xml"); //在页面上输出xml echo $doc->saveXML(); //将xml保存成文件 $doc->save("stu.xml"); ?>
이 코드를 자세히 보면 실제로는 복잡하지 않습니다. id 속성도 아래에 마운트해야 합니다. DOMDocument, 텍스트 노드가 속성 아래에 마운트됩니다. 생성된 xml을 살펴보겠습니다
실제로 DOMDocument는 노드나 속성을 먼저 생성하고, addchild
2를 통해 최종적으로 xml의 계층적 관계가 반영됩니다. 중요한 것은 getElementsByTagName 메소드, 속성 및 항목이 xml 구문 분석의 초점이라는 것을 이해하는 것입니다. 다른 모든 것은 매우 간단합니다. 구문 분석된 내용을 살펴보십시오.
일반적으로 말해서 simplexml보다 조금 더 번거롭지만 프로그래머로서 여전히 허용됩니다.
위 내용은 PHP가 DOMDocument를 사용하여 xml을 작동하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!