PHP XML Writer 조작 xml 기반 방법 분석

3786 단어 PHPXMLWriterxml
이 사례 는 PHP 가 XML Writer 를 바탕 으로 xml 를 조작 하 는 방법 을 설명 한다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
이 어 어제 의 이번 에는 xml 를 읽 고 쓰 는 방식 을 배 웠 다.이런 방식 은 주로 XML Writer 와 XML Reader 를 중심 으로 진행 되 었 다.전 자 는 xml 를 만 드 는 데 사용 되 고 후 자 는 xml 를 읽 고 해석 하 는 데 사 용 됩 니 다.
1.xml 파일 이나 문자열 생 성

<?php
 header("Content-type: text/html; charset=utf-8");
 $xml=new XMLWriter();
 //$xml->openUri("php://output");
 //    ,                     
 $xml->openUri("stu2.xml");
 //       ,       (      setIntent     )
 $xml->setIndentString('');
 $xml->setIndent(true);
 //xml    
 $xml->startDocument('1.0', 'utf-8');
 //     
 $xml->startElement("StudentInfo");
 $xml->startElement("Item");
 //    
 $xml->writeAttribute("type","1");
 $xml->startElement("id");
 $xml->text("01");
 $xml->endElement();
 $xml->startElement("name");
 $xml->text("   ");
 $xml->endElement();
 $xml->endElement();
 $xml->endElement();
 $xml->endDocument();
 //header("Content-type: text/xml");
 //       xml   
 //echo $xml->outputMemory();
?>

이 방식 의 특징 은 모든 탭 이 끝 난 후에 endElement 가 필요 하고 xml 를 맞 춘 후에 문 서 를 끝내 야 한 다 는 것 이다.겹겹이 감 싸 는 느낌 이 들 어 요.
2.분석 xml

<?php
 header("Content-type: text/html; charset=utf-8");
 $xml=new XMLReader();
//  xml  ,          xml  
 $xml->open("student.xml");
//    xml
 while($xml->read()){
   //                    
  if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'item') {
     print $xml->getAttribute("id") . "</br>";
   }
  if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'name') {
     //          
     $xml->read();
     //        
     print $xml->value."</br>";
  }
  if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'age') {
     $xml->read();
     print $xml->value."</br>";
  }
 }
?>

이러한 xml 분석 방식 은 비교적 효율 적 이 며,어떤 곳 에서 알 아 보지 못 하면 PHP 개발 매 뉴 얼 을 찾 아 보 는 것 이 좋 습 니 다.
해 석 된 파일 의 내용 은 다음 과 같 습 니 다.

<?xml version="1.0" encoding="utf-8"?>
<UsersInfo><item id="01"><name>   </name><age>30</age></item><item id="02"><name>   </name><age>29</age></item></UsersInfo>

다음은 해 석 된 결과 입 니 다.

PS:여기 서 xml 작업 에 관 한 온라인 도 구 를 몇 가지 더 제공 하여 참고 하 시기 바 랍 니 다.
온라인 XML/JSON 상호 변환 도구:
http://tools.jb51.net/code/xmljson
온라인 포맷 XML/온라인 압축 XML:
http://tools.jb51.net/code/xmlformat
XML 온라인 압축/포맷 도구:
http://tools.jb51.net/code/xml_format_compress
XML 코드 온라인 포맷 미화 도구:
http://tools.jb51.net/code/xmlcodeformat
더 많은 PHP 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 논문 에서 말 한 것 이 여러분 의 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기