라이브러리
[PHP] simplexml_load_string - XML 문자열을 객체로 해석합니다.
SimpleXML Load String
PHP의 SimpleXML은 XML 문서를 처리하는 라이브러리로, XML 문서를 객체로 변환하여 사용할 수 있도록 해줍니다. `simplexml_load_string` 함수는 XML 문자열을 객체로 변환하는 함수입니다.
사용법
`simplexml_load_string` 함수는 XML 문자열을 첫 번째 인자로 받습니다. 두 번째 인자로 `LIBXML_NOERROR` 또는 `LIBXML_ERR_NONE`과 같은 옵션을 받을 수 있습니다. 이 옵션을 사용하면 XML 파싱 시 오류가 발생할 경우 에러 메시지를 출력하지 않습니다.
예제
#hostingforum.kr
php
$xml_string = 'John30';
$xml = simplexml_load_string($xml_string);
if ($xml === false) {
echo "XML 파싱 실패";
} else {
echo "이름: " . $xml->name . "
";
echo "나이: " . $xml->age . "
";
}
이 예제에서는 XML 문자열을 `simplexml_load_string` 함수에 전달하여 XML 객체를 생성합니다. XML 객체를 사용하여 이름과 나이를 출력합니다.
XML 객체의 속성과 메서드
SimpleXML 객체는 XML 문서의 요소와 속성을 속성으로 가집니다. 예를 들어, 위의 예제에서 `name` 요소는 `$xml->name`로 접근할 수 있습니다. 또한, SimpleXML 객체는 `getAttribute` 메서드를 사용하여 요소의 속성을 접근할 수 있습니다.
예제 (속성과 메서드)
#hostingforum.kr
php
$xml_string = 'John30';
$xml = simplexml_load_string($xml_string);
echo "이름: " . $xml->name . "
";
echo "나이: " . $xml->age . "
";
echo "name 요소의 속성: " . $xml->name[''] . "
"; // name 요소의 속성이 없으므로 빈 문자열을 반환
echo "age 요소의 속성: " . $xml->age[''] . "
"; // age 요소의 속성이 없으므로 빈 문자열을 반환
echo "root 요소의 속성: " . $xml[''] . "
"; // root 요소의 속성이 없으므로 빈 문자열을 반환
이 예제에서는 XML 객체의 속성과 메서드를 사용하여 요소의 속성을 접근합니다. `getAttribute` 메서드는 요소의 속성을 반환합니다. 만약 속성이 없으면 빈 문자열을 반환합니다.
XML 객체의 자식 요소
SimpleXML 객체는 자식 요소를 사용하여 XML 문서의 구조를 탐색할 수 있습니다. 예를 들어, 위의 예제에서 `root` 요소의 자식 요소는 `$xml->children`로 접근할 수 있습니다.
예제 (자식 요소)
#hostingforum.kr
php
$xml_string = 'John30';
$xml = simplexml_load_string($xml_string);
$children = $xml->children;
foreach ($children as $child) {
echo $child->getName() . ": " . $child . "
";
}
이 예제에서는 XML 객체의 자식 요소를 사용하여 XML 문서의 구조를 탐색합니다. `children` 속성은 자식 요소의 배열을 반환합니다. 이 배열을 사용하여 자식 요소의 이름과 값을 출력합니다.
XML 객체의 속성과 메서드 (자식 요소)
SimpleXML 객체의 자식 요소는 속성과 메서드를 사용하여 접근할 수 있습니다. 예를 들어, 위의 예제에서 `name` 요소의 자식 요소는 `$child->children`로 접근할 수 있습니다.
예제 (속성과 메서드, 자식 요소)
#hostingforum.kr
php
$xml_string = 'John30';
$xml = simplexml_load_string($xml_string);
$children = $xml->children;
foreach ($children as $child) {
if ($child->getName() == 'name') {
echo "이름: " . $child . "
";
echo "name 요소의 속성: " . $child[''] . "
";
} elseif ($child->getName() == 'age') {
echo "나이: " . $child . "
";
echo "age 요소의 속성: " . $child[''] . "
";
}
}
이 예제에서는 XML 객체의 자식 요소를 사용하여 XML 문서의 구조를 탐색합니다. 자식 요소의 이름과 값을 출력합니다. 또한, 자식 요소의 속성을 출력합니다.
결론
SimpleXML은 XML 문서를 처리하는 라이브러리로, XML 문서를 객체로 변환하여 사용할 수 있도록 해줍니다. `simplexml_load_string` 함수는 XML 문자열을 객체로 변환하는 함수입니다. XML 객체는 속성과 메서드를 사용하여 요소와 속성을 접근할 수 있습니다. 또한, XML 객체의 자식 요소를 사용하여 XML 문서의 구조를 탐색할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.