如何在PHP中解析和处理HTML/XML?


本文解释了如何在PHP中处理XML文档。XML(可扩展标记语言)被定义为一种为人和计算机设计的文本标记语言。它是一种用于在应用程序之间存储和移动数据的格式。PHP提供的simplexml_load_string()函数允许我们轻松地解析XML字符串,此函数会将XML字符串转换为一个对象,以便我们检查以了解XML数据。

使用PHP simplexml_load_string()方法

PHP simplexml_load_string()函数接受一个XML字符串并返回一个SimpleXMLElement对象,该对象具有允许用户访问XML的属性和方法。

解析XML并显示为对象

下面的代码执行相同的操作,它读取给定的XML字符串并使用print_r()打印其结构。

示例代码

<!DOCTYPE html>
<html>
<body>
    <?php
    /* XML string */
    $myXMLData = "<?xml version='1.0' encoding='UTF-8'?>
    <note>
        <to>Tutorial Points</to>
        <from>Pankaj Bind</from>
        <heading>Submission</heading>
        <body>Welcome to Tutorials Points</body>
    </note>";

    /* Parse the XML string */
    $xml = simplexml_load_string($myXMLData)
    or die("Error: Cannot create XML data object");

    /* Print the parsed XML as an object */
    print_r($xml);
    ?>
</body>
</html>

输出

SimpleXMLElement Object
(
    [to] => Tutorial Points 
    [from] => Pankaj Bind
    [heading] => Submission
    [body] => Welcome to Tutorials Points 
)

在这种情况下,已经创建了一个包含XML字符串的SimpleXMLElement对象。print_r函数用于显示该对象表示的对象结构和XML元素。

访问XML节点值

在此示例中,我们使用这些方法来访问已存储在SimpleXMLElement对象中的某些XML节点值。

<!DOCTYPE html>
<html>
<body>
    <h2>Tutorial Points</h2>
    <b>Retrieve data from XML</b><br/><br/>
    
    <?php
    /* XML string */
    $myXMLData = "<?xml version='1.0' encoding='UTF-8'?>
    <note>
        <to>Tutorial Points</to>
        <from>Pankaj</from>
        <heading>Submission</heading>
        <body>Welcome to Tutorials Points</body>
    </note>";

    /* Parse the XML string */
    $xml = simplexml_load_string($myXMLData)
    or die("Error: Cannot create XML data object");

    /* Display XML node values */
    echo "To : " . $xml->to . "<br>";
    echo "From : " . $xml->from . "<br>";
    echo "Subject : " . $xml->heading . "<br>";
    echo "Message : " . $xml->body;
    ?>
</body>
</html>

输出


更新于:2024年11月11日

浏览量:18

启动你的职业生涯

通过完成课程获得认证

开始学习
广告