PHP 개발 기본 튜토리얼 ...LOGIN

PHP 개발 기본 튜토리얼 PHP XML DOM

1. DOM이란 무엇인가요?

W3C DOM은 HTML 및 XML 문서에 대한 표준 개체 세트는 물론 이러한 문서에 액세스하고 조작하기 위한 표준 인터페이스를 제공합니다.
W3C DOM은 다양한 부분(코어, XML 및 HTML)과 다양한 레벨(DOM 레벨 1/2/3)로 나뉩니다.

  • 코어 DOM - 모든 구조의 XML DOM - XML ​​문서에 대한 표준 객체 세트를 정의합니다.

  • 객체 세트

    XML DOM에 대해 자세히 알아보려면 XML DOM 튜토리얼을 방문하세요.

  • 2. XML 구문 분석

XML 문서를 읽고 업데이트하려면 XML이 필요합니다. 파서. XML 파서에는 두 가지 기본 유형이 있습니다.

트리 기반 파서: 이 파서는 XML 문서를 트리 구조로 변환합니다. 전체 문서를 분석하고 DOM(문서 개체 모델)과 같은 트리의 요소에 대한 액세스를 제공합니다.

시간 기반 파서: XML 문서를 일련의 이벤트로 처리합니다. 특정 이벤트가 발생하면 파서는 이를 처리하는 함수를 호출합니다.

DOM 파서는 트리 기반 파서입니다.

다음 XML 문서 부분을 살펴보십시오.

<?xml version="1.0" encoding="ISO-8859-1"?>
<from>Jani</from>

XML DOM 위의 XML을 트리 구조로 고려하십시오.

레벨 1: XML 문서

  • 레벨 2: 루트 요소: <from>
  • 레벨 3: 텍스트 요소: "Jani"

  • 3. 설치

DOM XML 파서 기능은 PHP 코어의 핵심 부분입니다. 이 기능을 사용하기 위해 설치가 필요하지 않습니다.

4. XML 파일

이 예에서는 다음 XML 파일이 사용됩니다.

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

5. XML 로드 및 출력

XML 파서를 초기화하고 XML을 로드한 후 출력해야 합니다. Instance

<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
print $xmlDoc->saveXML();
?>

위 코드는 다음을 출력합니다:

ToveJaniReminder 이번 주말에 저를 잊지 마세요!

브라우저 창에서 소스 코드를 보면 다음 HTML을 볼 수 있습니다:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

위의 예에서는 DOMDocument-Object를 생성하고 "note.xml"의 XML을 이 문서 개체에 로드합니다.

saveXML() 함수는 내부 XML 문서를 문자열로 변환하여 출력할 수 있도록 합니다.

6. XML 탐색

XML 파서를 초기화하고 XML을 로드한 다음 <note> 요소: Instance

<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
$x = $xmlDoc->documentElement;
foreach ($x->childNodes AS $item)
{
print $item->nodeName . " = " . $item->nodeValue . "<br>";
}
?>

위 코드는 다음을 출력합니다:

#text =
to = Tove
#text =
from = Jani
#text =
heading = 알림
#text =
body = 하지 마세요 이번 주말에 저를 잊어버리세요!
#text =

위의 예에서는 각 요소 사이에 빈 텍스트 노드가 있는 것을 볼 수 있습니다.

XML이 생성되면 일반적으로 노드 사이에 공백이 포함됩니다. XML DOM 파서는 이를 일반 요소로 취급하므로 주의를 기울이지 않으면 문제가 발생할 수 있습니다.


다음 섹션
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
코스웨어