최신 웹 개발 튜토리얼
 

PHP SimpleXML을 파서


SimpleXML을 우리가 쉽게 조작하고 XML 데이터를 얻을 수있는 PHP 확장입니다.


SimpleXML을 파서

SimpleXML을 나무 기반 파서입니다.

SimpleXML이는 요소의 이름을 얻는 쉬운 방법을 제공 당신은 XML 문서의 구조 나 레이아웃을 알고있는 경우 및 텍스트 컨텐츠를 속성.

SimpleXML을 사용하면 배열과 개체의 컬렉션 등을 통해 반복 할 수있는 데이터 구조로 XML 문서를집니다.

DOM 또는 국외 거주자 파서에 비해 SimpleXML을는 요소에서 텍스트 데이터를 판독하는 코드 라인 적게 걸린다.


설치

PHP 5로, SimpleXML의 기능은 PHP 코어의 일부이다. 아니 설치가 이러한 기능을 사용하는 데 필요하지 않습니다.


PHP SimpleXML을 - 문자열에서 읽기

PHP는 simplexml_load_string() 함수는 문자열에서 XML 데이터를 읽는 데 사용됩니다.

우리는 다음과 같이 XML 데이터를 포함하는 변수가 가정 :

$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>";

아래의 예는 사용하는 방법을 보여줍니다 simplexml_load_string() 문자열에서 XML 데이터를 읽는 기능 :

<?php
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>";

$xml=simplexml_load_string($myXMLData) or die("Error: Cannot create object");
print_r($xml);
?>
»실행 예

코드의 출력은 위의 것입니다 :

SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

오류 처리 팁 : 문서를로드 할 때 모든 XML 오류를 검색 할 libxml 기능을 사용하고 오류를 반복. 다음의 예는 깨진 XML 문자열을로드하려고 :

<?php
libxml_use_internal_errors(true);
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<document>
<user>John Doe</wronguser>
<email>[email protected]</wrongemail>
</document>";

$xml = simplexml_load_string($myXMLData);
if ($xml === false) {
    echo "Failed loading XML: ";
    foreach(libxml_get_errors() as $error) {
        echo "<br>" , $error->message;
    }
} else {
    print_r($xml);
}
?>
»실행 예

코드의 출력은 위의 것입니다 :

Failed loading XML:
Opening and ending tag mismatch: user line 3 and wronguser
Opening and ending tag mismatch: email line 4 and wrongemail

PHP SimpleXML을 - 파일에서 읽기

PHP는 simplexml_load_file() 함수는 파일에서 XML 데이터를 읽는 데 사용됩니다.

우리가 "라는 XML 파일이 있다고 가정 note.xml 다음과 같습니다":

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

아래의 예는 사용하는 방법을 보여줍니다 simplexml_load_file() 파일에서 XML 데이터를 읽는 기능 :

<?php
$xml=simplexml_load_file("note.xml") or die("Error: Cannot create object");
print_r($xml);
?>
»실행 예

코드의 출력은 위의 것입니다 :

SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

팁 : 다음 장 / 수 SimpleXML을 가진 XML 파일에서 노드 값을 검색하는 방법을 보여줍니다!


더 PHP의 SimpleXML을

PHP를 SimpleXML을 함수에 대한 자세한 내용은 우리의 방문 PHP SimpleXML을 참조.