Skip to content
Related Articles

Related Articles

Improve Article
How to parse and process HTML/XML using PHP ?
  • Last Updated : 15 Oct, 2020

In this article, we will learn how to process XML using PHP. We have already learnt the basics of XML and their differences with respect to HTML. Different elements of XML can be learnt from XML Elements to understand the wokring of the following programs.

The simplexml_load_string() function is used to parse the given XML and then the XML object can be used for accessing the XML data.

Example 1: The following example reads and prints the given XML string.

HTML




<html>
  
<body>
    <?php
    /* XML string */
    $myXMLData =
    "<?xml version='1.0' encoding='UTF-8'?>
    <note>
        <to>GeeksForGeeks</to>
        <from>Tom</from>
        <heading>Submission</heading>
  
        <body>
            Please see my artciles of PHP!
        </body>
    </note>";
  
    /* The function reads xml data 
       from the passed string */
    $xml = simplexml_load_string($myXMLData)
    or die("Error: Cannot create xml data object");
      
    print_r($xml);
    ?>
</body>
  
</html>

Output:



 SimpleXMLElement Object
 (
    [to] => GeeksForGeeks
    [from] => Tom
    [heading] => Submission
    [body] => Please see my artciles of PHP!
 )

Example 2: The following example demonstrates how to get XML node values using PHP. The node values are shown in the output given below.

HTML




<!DOCTYPE html>
<html>
  
<body>
    <h2>GeeksForGeeks </h2>
    <b>
        Get data from XML data string
    </b>
      
    <br /><br />
    <?php
    // XML string
    $myXMLData =
        "<?xml version='1.0' encoding='UTF-8'?>
      
    <note>
        <to>GeeksForGeeks</to>
        <from>John</from>
        <heading>Submission</heading>
  
        <body>Please see my articles of PHP!</body>
    </note>";
  
    /* The function reads xml data 
       from the passed string */
    $xml = simplexml_load_string($myXMLData)
    or die("Error: Cannot create xml data object");
    echo "To : " . $xml->to . "<br>";
    echo "From : " . $xml->from . "<br>";
    echo "Subject : " . $xml->heading . "<br>";
    echo "Mail : " . $xml->body;
    ?>
</body>
  
</html>

Output:




My Personal Notes arrow_drop_up
Recommended Articles
Page :