최신 웹 개발 튜토리얼
 

PHP simplexml_load_string() Function

<PHP SimpleXML을 참조

SimpleXMLElement 개체, 다음 출력 키와 객체의 요소로 잘 구성된 XML 문자열로 변환 :

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
print_r($xml);
?>
»실행 예

정의 및 사용

simplexml_load_string() 함수는 SimpleXMLElement 객체로 잘 형성된 XML 스트링을 변환한다.


통사론

simplexml_load_string( data,classname,options,ns,is_prefix );

매개 변수 기술
data 필요합니다. 잘 구성된 XML 문자열을 지정합니다
classname 선택 과목. 새 개체의 클래스를 지정합니다
options 선택 과목. 추가 Libxml 매개 변수를 지정합니다. 옵션 1 또는 0을 지정하여 설정되어 (TRUE or FALSE, eg LIBXML_NOBLANKS(1) )

가능한 값 :

  • LIBXML_COMPACT이 - 노드에게 할당 최적화를 활성화 (응용 프로그램의 속도가 빨라질 수 있습니다)
  • LIBXML_DTDATTR - 설정 기본 DTD 속성
  • LIBXML_DTDLOAD - 외부 부분 집합을로드
  • LIBXML_DTDVALID - DAD로 유효성 검사
  • LIBXML_NOBLANKS - 빈 노드를 제거
  • LIBXML_NOCDATA - 텍스트 노드로 CDATA 병합
  • LIBXML_NOEMPTYTAG은 - 빈 태그를 확장 (eg <br/> to <br></br>) 만 가능 DOMDocument-> save()DOMDocument-> saveXML() 기능
  • LIBXML_NOENT - 대체 엔티티
  • LIBXML_NOERROR - 오류 보고서를 표시하지 않음
  • LIBXML_NONET - 문서를로드하는 동안 비활성화 네트워크 액세스
  • LIBXML_NOWARNING - 경고 보고서를 표시하지 않음
  • LIBXML_NOXMLDECL은 - 문서를 저장할 때 XML 선언을 드롭
  • LIBXML_NSCLEAN - 중복 된 네임 스페이스 선언을 제거
  • LIBXML_PARSEHUGE는 - 파서에서 모든 하드 제한을 완화 XML_PARSE_HUGE 플래그를 설정합니다. 이것은 최대 문서의 깊이와 텍스트 노드의 크기의 제한 등의 제한에 영향을 미칩니다
  • LIBXML_XINCLUDE -의 XInclude 대체를 구현
  • LIBXML_ERR_ERROR - 복구 오류를 가져옵니다
  • LIBXML_ERR_FATAL은 - 치명적인 오류를 가져옵니다
  • LIBXML_ERR_NONE - 오류를 얻을
  • LIBXML_ERR_WARNING - 간단한 경고를 받기
  • LIBXML_VERSION - 가져 오기 libxml 버전 (eg 20605 or 20617)
  • LIBXML_DOTTED_VERSION - 점선 libxml 버전 (예 : 2.6.5 또는 2.6.17)을 가져옵니다
ns 선택 과목. 네임 스페이스 접두사 또는 URI를 지정합니다
is_prefix 선택 과목. 부울 값을 지정합니다. NS 접두사 인 경우 TRUE. NS는 URI 인 경우 FALSE. 기본값은 FALSE입니다

기술적 세부 사항

반환 값 : 성공에 SimpleXMLElement 오브젝트를 돌려줍니다. 실패 FALSE
PHP 버전 : 5+

더 예

예 1

출력 XML 문자열의 각 요소의 데이터 :

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
echo $xml->to . "<br>";
echo $xml->from . "<br>";
echo $xml->heading . "<br>";
echo $xml->body;
?>
»실행 예

예 2

는 XML 문자열의 각 자식 노드의 출력 요소의 이름과 데이터 :

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
echo $xml->getName() . "<br>";

foreach($xml->children() as $child)
  {
  echo $child->getName() . ": " . $child . "<br>";
  }
?>
»실행 예

<PHP SimpleXML을 참조