PHP XML 파서를 사용하면 XML 문서를 읽고, 만들고, 업데이트하고, 조작할 수 있습니다. XML 언어는 웹사이트 전반에 걸쳐 공유 데이터를 구성하는 데 사용됩니다. 확장 기능은 Expect XML 파서를 사용합니다. XML 함수는 XML 문서를 구문 분석하지만 유효성을 검사하지는 않습니다. PHP에는 두 가지 유형의 XML 파서가 있습니다. 세 가지 기반 파서와 이벤트 기반 파서입니다. Expat는 이벤트 기반 파서입니다. 이는 이벤트 기반(이벤트 발생 시 핸들러 함수 호출)이며 유효성을 검사하지 않는 파서입니다(문서의 DTD 링크를 유효성 검사하지 않고 무시하지만 문서의 형식이 올바르지 않으면 문서가 종료되고 오류가 발생합니다). 오류 메시지)이므로 웹 응용 프로그램에 적합하고 빠릅니다. PHP는 핵심 PHP의 일부이므로 XML 파서 설치가 필요하지 않습니다.
광고
이 카테고리에서 인기 있는 강좌
PHP 개발자 - 전문 분야 | 8개 코스 시리즈 | 3가지 모의고사
무료 소프트웨어 개발 과정 시작
웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등
PHP XML 파서의 상수 목록은 –
- XML_ERROR_NONE – 데이터 유형 정수.
- XML_ERROR_SYNTAX – 데이터 유형 정수.
- XML_ERROR_NO_MEMORY – 데이터 유형 정수.
- XML_ERROR_INVALID_TOKEN – 데이터 유형 정수.
- XML_ERROR_NO_ELEMENTS – 데이터 유형 정수.
- XML_ERROR_UNCLOSED_TOKEN – 데이터 유형 정수.
- XML_ERROR_PARTIAL_CHAR – 데이터 유형 정수.
- XML_ERROR_TAG_MISMATCH – 데이터 유형 정수.
- XML_ERROR_DUPLICATE_ATTRIBUTE – 데이터 유형 정수.
- XML_ERROR_UNDEFINED_ENTITY – 데이터 유형 정수.
- XML_ERROR_JUNK_AFTER_DOC_ELEMENT – 데이터 유형 정수.
- XML_ERROR_PARAM_ENTITY_REF – 데이터 유형 정수.
- XML_ERROR_RECURSIVE_ENTITY_REF – 데이터 유형 정수.
- XML_ERROR_ASYNC_ENTITY – 데이터 유형 정수.
- XML_ERROR_BAD_CHAR_REF – 데이터 유형 정수.
- XML_ERROR_MISPLACED_XML_PI – 데이터 유형 정수.
- XML_ERROR_BINARY_ENTITY_REF – 데이터 유형 정수.
- XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF – 데이터 유형 정수.
- XML_ERROR_UNKNOWN_ENCODING – 데이터 유형 정수.
- XML_ERROR_INCORRECT_ENCODING – 데이터 유형 정수.
- XML_ERROR_EXTERNAL_ENTITY_HANDLING – 데이터 유형 정수.
- XML_ERROR_UNCLOSED_CDATA_SECTION – 데이터 유형 정수.
- XML_OPTION_CASE_FOLDING – 데이터 유형 정수.
- XML_OPTION_TARGET_ENCODING – 데이터 유형 정수.
- XML_OPTION_SKIP_TAGSTART – 데이터 유형 정수.
- XML_OPTION_SKIP_WHITE – 데이터 유형 정수.
- XML_SAX_IMPL – 데이터 유형 문자열.
PHP XML 파서의 기능
PHP XML 파서의 기능은 다음과 같습니다.
- utf8_decode() – 이 함수는 UTF-8 문자열을 ISO-8859-1로 문자 디코딩하는 데 사용됩니다.
- utf8_encode() – 이 함수는 문자가 ISO-8859-1 문자열을 UTF-8로 인코딩하는 데 사용됩니다.
- xml_get_current_column_number() – 이 함수는 XML 파서에서 현재 열 번호를 가져오는 데 사용됩니다.
- xml_get_current_byte_index() – 이 함수는 XML 파서의 현재 바이트 인덱스를 가져오는 데 사용됩니다.
- xml_get_current_line_number() – 이 함수는 XML 파서의 현재 줄 번호를 가져오는 데 사용됩니다.
- xml_error_string() – 이 함수는 XML 파서에 오류가 있는 경우 오류를 가져오는 데 사용됩니다.
- xml_get_error_code() – 이 함수는 XML 파서에 오류 코드가 있는 경우 이를 가져오는 데 사용됩니다.
- xml_parse() – 이 함수는 XML 문서에 대한 Parse 작업을 수행하는 데 사용됩니다.
- xml_parse_into_struct() – 이 함수는 XML 데이터를 배열로 구문 분석하는 데 사용됩니다.
- xml_parser_create() – 이 함수는 XML 파서를 생성하는 데 사용됩니다
- xml_parser_create_ns() – 이 함수는 네임스페이스를 사용하여 XML 파서를 생성하는 데 사용됩니다.
- xml_parser_free() – 이 함수는 XML 파서를 해제하는 데 사용됩니다.
- xml_parser_set_option() – 이 함수는 XML 파서에 옵션을 설정하는 데 사용됩니다.
- xml_parser_get_option() – 이 함수는 XML 파서의 옵션을 가져오는 데 사용됩니다.
- xml_set_default_handler() – 이 함수는 XML 파서에서 기본 데이터 핸들러를 설정하는 데 사용됩니다.
- xml_set_character_data_handler() – 이 함수는 XML 파서에서 문자 데이터 핸들러를 설정하는 데 사용됩니다.
- xml_set_end_namespace_decl_handler() – 이 함수는 XML 파서의 네임스페이스 선언 핸들러에 대한 end를 설정하는 데 사용됩니다.
- xml_set_external_entity_ref_handler() – 이 함수는 XML 파서의 외부 엔터티 참조 핸들러를 설정하는 데 사용됩니다.
- xml_set_object() – 이 함수는 객체가 XML 파서를 사용할 수 있도록 하는 데 사용됩니다.
- xml_set_processing_instruction_handler() – 이 함수는 XML 파서의 처리 명령 핸들러를 설정하는 데 사용됩니다.
- xml_set_notation_decl_handler() – 이 함수는 XML 파서의 표기법 선언 핸들러를 설정하는 데 사용됩니다.
- xml_set_unparsed_entity_decl_handler() – 이 함수는 XML 파서의 핸들러 함수를 구문 분석되지 않은 엔터티 선언으로 설정하는 데 사용됩니다.
- xml_set_element_handler() – 이 함수는 XML 파서의 요소 핸들러에 대한 시작과 끝을 설정하는 데 사용됩니다.
- xml_set_start_namespace_decl_handler() – 이 함수는 XML 파서의 시작 네임스페이스 선언 핸들러를 설정하는 데 사용됩니다.
PHP XML 파서 예시
배열의 XML 파일을 읽기 위한 PHP XML 파서의 예 –
다음으로, 다음 예제를 통해 PHP XML 파서를 더 명확하게 이해하기 위해 PHP 코드를 작성합니다. 여기서 XML 파서는 아래와 같이 XML 데이터 파일을 읽고 배열에 저장하는 데 사용됩니다.
예시 #1
먼저 "Examplefile.xml"이라는 이름으로 XML 데이터 파일을 생성하고 다음과 같이 데이터 콘텐츠를 생성합니다.
<?xml version="1.0" encoding="utf-8"?>
<employees status = "ok">
<record no = "100">
<name> John </name>
<position> Clerk </position>
</record>
<record no = "101">
<name> Sam </name>
<position> Sales Manager </position>
</record>
<record no = "102">
<name> Jaan </name>
<position> Sales Executive </position>
</record>
</employees>
Next create the php file as below -
<!DOCTYPE html>
<html>
<body>
<?php
// using this function to creates an XML parser
$xmlparser = xml_parser_create();
// opening the xml file to read
$file = fopen("Examplefile.xml", "r");
//freeing the memory when read is done with
$xml_data = fread($file, 4096);
// Parsing the XML data of the file into an array
xml_parse_into_struct($xmlparser,$xml_data,$values);
// This function is using to frees the XML parser
xml_parser_free($xmlparser);
// printing the values from the xml file
print_r($values);
// closing the xml file
fclose($file);
?>
</body>
</html>
출력:
위 프로그램과 마찬가지로 XML 파서가 생성된 후 “Examplefile.xml” 파일이 열리고, 읽혀지고, 파일의 XML 데이터가 배열로 파싱됩니다. 보시다시피 출력물에서도 인쇄되고 있습니다.
결론
PHP XML 파서를 사용하면 XML 문서를 읽고, 만들고, 업데이트하고, 조작할 수 있습니다. XML 파서에는 위에서 설명한 상수와 함수가 있습니다.
위 내용은 PHP XML 파서의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!