PHP SimpleXML은 가장 일반적인 XML 작업을 처리하고 나머지는 다른 확장에 맡깁니다.
SimpleXML은 PHP 5의 새로운 기능입니다.
SimpleXML 확장은 XML 요소의 이름과 텍스트를 얻는 간단한 방법을 제공합니다.
DOM 또는 Expat 파서와 비교하여 SimpleXML은 단 몇 줄의 코드만으로 XML 요소에서 텍스트 데이터를 읽을 수 있습니다.
SimpleXML은 XML 문서(또는 XML 문자열)를 다음과 같은 객체로 변환할 수 있습니다.
요소는 SimpleXMLElement 객체의 단일 속성으로 변환됩니다. 동일한 수준에 여러 요소가 있는 경우 해당 요소는 배열에 배치됩니다.
속성은 색인이 속성 이름에 해당하는 연관 배열을 사용하여 액세스됩니다.
요소 내부의 텍스트가 문자열로 변환됩니다. 요소에 여러 개의 텍스트 노드가 있는 경우 발견된 순서대로 정렬됩니다.
SimpleXML은 다음과 같은 기본 작업을 수행할 때 사용 속도가 매우 빠릅니다.
XML 파일/문자열에서 데이터 읽기/추출
텍스트 노드 또는 속성 편집
그러나 네임스페이스와 같은 고급 XML을 처리할 때는 Expat 파서나 XML DOM을 사용하는 것이 더 좋습니다.
PHP 5부터 SimpleXML 함수는 PHP 핵심의 일부입니다. 이 기능을 사용하기 위해 설치가 필요하지 않습니다.
다음과 같은 XML 파일 "note.xml"이 있다고 가정합니다.
<? xml 버전 = " 1.0 " 인코딩 = " ISO-8859-1 " ?> <참고> < to > 토베 </ to > < 에서 > Jani </ 에서 > < 제목 > 알림 </ 제목 > < body > 이번 주말에도 저를 잊지 마세요 </ body > </ 참고 >이제 위의 XML 파일에서 다른 정보를 출력하려고 합니다.
$xml 변수(SimpleXMLElement 객체)의 키와 요소를 출력합니다.
<?php $xml = simplexml_load_file ( " note.xml " ) ; print_r ( $xml ) ? >위 코드는 다음을 출력합니다:
SimpleXMLElement 객체 ( [to] => Tove [from] => Jani [heading] => Reminder [body] => 이번 주말에 저를 잊지 마세요! )
XML 파일의 각 요소에 대한 출력 데이터:
<?php $ xml = simplexml_load_file ( " note.xml " ) 에코 $xml - > . " <br> " 에코 ; $xml - > . " <br> " 에서 ; $ xml - > 제목 " <br> " ; $xml -> 본문 ? >위 코드는 다음을 출력합니다:
ToveJani알림 이번 주말에 저를 잊지 마세요!
각 하위 노드의 요소 이름과 데이터를 출력합니다.
<?php $ xml = simplexml_load_file ( " note.xml " ) 에코 $xml -> getName ( ) . " <br> " ; foreach ( $xml -> 자식 ( ) ~처럼 $아이 ) { 에코 $ child - > getName ( ) . " : " . " <br> " ; ?>위 코드는 다음을 출력합니다:
참고: Tovefrom: Janiheading: Reminderbody: 이번 주말에 저를 잊지 마세요!
PHP SimpleXML 함수에 대해 자세히 알아보려면 PHP SimpleXML 참조 매뉴얼을 방문하세요.