라이브러리
[PHP] libxml_get_errors - 오류 배열 검색
libxml_get_errors
libxml_get_errors는 PHP에서 XML 파싱을 수행할 때 발생하는 오류를 가져오는 함수입니다. 이 함수는 libxml2 라이브러리를 사용하여 XML 문서를 파싱하는 동안 발생하는 오류를 반환합니다.
# 사용법
libxml_get_errors 함수는 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
php
libxml_get_errors()
# 예제
다음 예제는 libxml_get_errors 함수를 사용하여 XML 파싱 오류를 가져오는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
// 잘못된 XML 문서를 생성합니다.
$xml = 'John30Seoul';
// libxml_use_internal_errors를 사용하여 내부 오류를 사용합니다.
libxml_use_internal_errors(true);
// XML 문서를 파싱합니다.
$xmlDoc = simplexml_load_string($xml);
// 오류가 발생한 경우, 오류를 가져옵니다.
if ($xmlDoc === false) {
$errors = libxml_get_errors();
foreach ($errors as $error) {
echo "오류 메시지: " . $error->message . "
";
echo "오류 코드: " . $error->code . "
";
}
libxml_clear_errors();
}
?>
# 결과
이 예제를 실행하면, 잘못된 XML 문서를 파싱할 때 발생하는 오류가 출력됩니다.
#hostingforum.kr
오류 메시지: Extra content at the end of the document
오류 코드: 4
# libxml_clear_errors
libxml_clear_errors 함수는 libxml_get_errors 함수로 가져온 오류를 삭제합니다. 이 함수를 사용하여 오류를 삭제하고, 다음 오류를 가져올 수 있습니다.
#hostingforum.kr
php
libxml_clear_errors();
# 예제
다음 예제는 libxml_clear_errors 함수를 사용하여 오류를 삭제하는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
// 잘못된 XML 문서를 생성합니다.
$xml = 'John30Seoul';
// libxml_use_internal_errors를 사용하여 내부 오류를 사용합니다.
libxml_use_internal_errors(true);
// XML 문서를 파싱합니다.
$xmlDoc = simplexml_load_string($xml);
// 오류가 발생한 경우, 오류를 가져옵니다.
if ($xmlDoc === false) {
$errors = libxml_get_errors();
foreach ($errors as $error) {
echo "오류 메시지: " . $error->message . "
";
echo "오류 코드: " . $error->code . "
";
}
libxml_clear_errors(); // 오류를 삭제합니다.
$errors = libxml_get_errors();
foreach ($errors as $error) {
echo "오류 메시지: " . $error->message . "
";
echo "오류 코드: " . $error->code . "
";
}
}
?>
# 결과
이 예제를 실행하면, 오류가 삭제된 후 다시 오류를 가져올 수 있습니다.
#hostingforum.kr
오류 메시지: Extra content at the end of the document
오류 코드: 4
오류 메시지:
오류 코드:
결론
libxml_get_errors 함수는 PHP에서 XML 파싱을 수행할 때 발생하는 오류를 가져올 수 있습니다. 이 함수를 사용하여 오류를 가져오고, 오류를 삭제할 수 있습니다. libxml_clear_errors 함수를 사용하여 오류를 삭제하고, 다음 오류를 가져올 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.