PHP xml_parse() 函数

返回上一级

PHP xml_parse() 函数解析 XML 文档

函数原型

xml_parse(parser,xml,end)

提示: 要创建 XML 解析器,请使用 xml_parser_create() 函数。

参数

参数 描述
parser 必需。规定要使用的 XML 解析器
xml 必需。规定要解析的 XML 数据
end 可选。如果该参数是 TRUE,则 "xml" 参数中的数据是当前解析中最后一段数据
实体错误在解析的最后被报告,且仅在 "end" 参数是 TRUE 时才显示

返回值

如果成功,该函数则返回 TRUE
如果失败,则返回 FALSE

范例

XML 文件

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
</note>

PHP 代码

<?php

$parser=xml_parser_create();
function char($parser,$data)
{
    echo $data;
}

xml_set_character_data_handler($parser,"char");

$fp=fopen("test.xml","r");

while ($data=fread($fp,4096))
{
    xml_parse($parser,$data,feof($fp)) ordie (sprintf("XML Error: %s at line %d",xml_error_string(xml_get_error_code($parser)),xml_get_current_line_number($parser)));
}

xml_parser_free($parser);

运行以上 PHP 范例,输出结果如下

Tove Jani Reminder Don't forget me this weekend!

范例 2

使用相同的 XML 文件但通过不同的方式显示 XML 数据:

<?php

$parser=xml_parser_create();

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 stop($parser,$element_name)
{
    echo "<br />";
}

function char($parser,$data)
{
    echo $data;
}

xml_set_element_handler($parser,"start","stop");
xml_set_character_data_handler($parser,"char");

$fp=fopen("test.xml","r");

while ($data=fread($fp,4096))
{
    xml_parse($parser,$data,feof($fp)) ordie (sprintf("XML Error: %s at line %d",xml_error_string(xml_get_error_code($parser)),xml_get_current_line_number($parser)));
}

xml_parser_free($parser);

运行以上 PHP 范例,输出结果如下

-- Note --
To: Tove
From: Jani
Heading: Reminder
Message: Don't forget me this weekend!

返回上一级

PHP 5 函数参考手册

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.