如何在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

啟動你的職業生涯

透過完成課程獲得認證

開始學習
廣告