PHP XML ?? ??? ??
PHP XML Expat ??
??? Expat ??? ???? PHP?? XML ??? ??? ? ????.
XML?? ??????
XML? ?? ??? ??? ?????. ??? ???? ??? ? ?? ?? ??? ????, ??? ??? ?? ???? ??? ??? ?? ?? ??? ??? ? ????. ??? ??? ???? ??? HTML? ?? ????? ???? ??? ??? ??? ?? ??, ???? ???? ???? XML? ?? ??? ??? ??? ?? ????. ??? ?? ??? ??????. XML? SGML?? ????? ???????. ?? XML, XSL, XPath ?? ?????.
? ??? XML? ?? ???? ?? ?????? ?????. ??? ??? XML? ??? ?? ????? ????? ????? ???? ???? ?? ??? ?? ??? ??? ?? ????. ??? ??? ??? ????? ????? ???? ?? ?? ???? ??? ? ????.
XML? ?? ??? ?? XML? ??? ???? ???? ?? ?? ????. ??? XML? ???? ???? ?? ??? ?? ? ????. XML? ??? ? ? ??? ???? ?? ? ??? ???? ? ??? ? ????.
XML ?????? ??? ?? ?? ??? ??? ??? ? ?? ???? ????. ??? ? ?? ???? XML ?????????.
1. ?? ???? ?? ?????? ? ??? ??? ??? XML+XSLT=>HTML. XML? ?? ??? XML ???? ????, XSLT? XML? ?? ? ?? ???? ?? XSLT? HTML ??? ???? ????? HTML? ?? ????? ?????. ???? ?? CSDN? ??????.
2. XML? ?? ???? ??? ?? ?????? ? ??? ???? ?????????. ??? ?? XML API(MSXML DOM, JAVA DOM ?)? ???? XML? ????? ?????. ??? ???? XML? ??????? ???? ??? ?? ? ? ????.
3. ?? ????. ?? ???? ?? XML? ???? ???? ???? WEB SERVICE???.
4. ?? ??????? ?? ?? ???. ???? ??? J2EE? ? ??? ??? ? ???? web.XML???.
5. ?? ??? XML ??. WORD, EXCEL ?? ??
6. ??? ?? ?? ??? ?????. ?? ?? ??? ??.
??? ??? 6?? ??????? ????? XML? ?? ??? ??? ????. ??? ??? XML? ?? ????? ???? ????? ?? ?? ?????. ?? ?? ????? ?? ?????? ???? ??? ??? ??? ?? ?? ??? ??? ???.
XML? ???? ????? ??? ?? ???? ???? ? ?????. XML ??? ???? ??? ?????.
XML?? ?? ??? ??? ????. ???? ??? ???? ???.
XML? ?? ??? ????? XML ????? ?????.
Expat? ??????
Expat? ??? ?? ?????. ?? ??(?? ???) ??? ??? ?? ?? ?? ??? ?????. ??? ??? ??? ??? ???? ?? ??? ???? ???? ?????(??? ??). ??? ??? ???? ?? ???? ???? ???? ?????. ??? ?? ???? ??? ??? ??? ?? ??? ? ????.
XML ??? ?? ????(?? ? ??)??? XML ??? ?????.
XML ???? ? ?? ?? ??? ????.
· ?? ?? ??: ? ??? XML ??? ?? ??? ?????. ?? ??? ???? DOM(?? ?? ??)? ?? ??? ??? ?? ???? ?????.
· ??? ?? ??: XML ??? ??? ???? ?????. ?? ???? ???? ??? ?? ???? ??? ?????.
Expat ??? ??? ?? ?????.
??? ?? ??? ????? XML ??? ??? ??? ???. ? ??? ??? ?? ??? ?? ?? ???? ? ??? ???? ???? ? ????.
?? XML ??? ?????.
<from>Jani</from>
??? ?? ??? ? XML? ??? ? ?? ???? ?????.
· ?? ??: from
· ?? CDATA ??, ?: Jani
· ?? ??: from
?? XML ??? Good ??? ???? ????. XML. ??? ? ????? ??? DTD(?? ?? ??)? ?? ??? ??? XML???.
??? Expat ??? ??? ?? ??? ??? ????. Expat? ???? ???? ?? DTD? ???? ?????.
??? ??? ???? ?? XML ??? Expat? ??? ???? PHP ? ??????? ??????.
??: XML ??? ??? ????? ???. ??? ??? Expat?? ??? ?????.
??
XML Expat ?? ??? PHP ??? ?? ?????. ? ??? ???? ?? ??? ???? ????.
XML ??
? ???? ?? XML ??? ?????.
<?xml version="1.0" ???=" ISO -8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>??</heading> ;
<body>?? ??? ?? ?? ???!</body>
</note>
XML ?? ???
PHP?? XML ??? ????? ??? XML ???? ?? ???? ??? ?? ? XML ??? ?? ???????.
Instance
<?php //Initialize the XML parser $parser=xml_parser_create(); //Function to use at the start of an element function start($parser,$element_name,$element_attrs) { switch($element_name) { case "NOTE": echo "-- Note --<br>"; break; case "TO": echo "To: "; break; case "FROM": echo "From: "; break; case "HEADING": echo "Heading: "; break; case "BODY": echo "Message: "; } } //Function to use at the end of an element function stop($parser,$element_name) { echo "<br>"; } //Function to use when finding character data function char($parser,$data) { echo $data; } //Specify element handler xml_set_element_handler($parser,"start","stop"); //Specify data handler xml_set_character_data_handler($parser,"char"); //Open XML file $fp=fopen("test.xml","r"); //Read data while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) or die (sprintf("XML Error: %s at line %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); } //Free the XML parser xml_parser_free($parser); ?>
? ??? ??? ?????:
-- ?? --
?? ??: Tove
?? ??: Jani
??: ??
???: ?? ??? ?? ?? ???!
?? ??:
1. xml_parser_create() ??? ?? XML ??? ??????
2. ??? ??? ???? ???? ??? ????
3. ??? ? ??? xml_set_element_handler() ??? ?????. ??? ?? ? ? ???? ??? ?? ??? ?????
4. xml_set_character_data_handler() ??? ???? ??? ?? ???? ??? ? ?? ??? ?????
5. xml_parse()? ?? ( ) ??? ???? "test.xml" ??? ?? ?????
6. ??? ??? ?? XML ??? ??? ???? ???? xml_error_string() ??? ?????
7. xml_parser_free() ??? ???? ?? xml_parser_create() ??? ??? ???
PHP Expat ??? ?? ?? ??
PHP Expat ??? ?? ??? ??? ??? PHP? ?????. XML ?? ?? ???.