Pre-requisite: Read XML Basics
The SimpleXMLElement::count() function is an inbuilt function in PHP which counts number of child element in a SimpleXML object.
Syntax:
int SimpleXMLElement::count()
Parameter: This function does not accept any parameters.
Return Value: This function returns number of children of an element.
Note: This function is available for PHP 5.3.0 and newer version.
Example 1:
<?php // Loading XML document to $user $user = <<<XML <user> <username> user123 </username> <name> firstname lastname </name> <phone> +91-9876543210 </phone> <detail> I am John Doe. Live in Kolkata, India. </detail> </user> XML; // Creating new SimpleXMLElement // object from $user $xml = new SimpleXMLElement( $user ); // Counting and printing number of // child of the XML document echo $xml -> count (); ?> |
Output:
4
Example 2: Counting children of child element of the XML document.
<?php // Loading XML document to $user $user = <<<XML <users> <user name= "user1" > <username> user123 </username> <name> firstname lastname </name> <phone> +91-9876543210 </phone> <detail> I am John Doe. Live in Kolkata, India. </detail> <ins> <ins_name>neveropen for neveropen</ins_name> <ins_type>educational</ins_type> <ins_url>geeksforgeeks.org</ins_url> </ins> </user> <user name= "user2" > <username> user123 </username> <name> firstname lastname </name> <phone> +91-9876543210 </phone> <detail> I am John Doe. Live in Kolkata, India. </detail> <ins> <ins_name>neveropen for neveropen</ins_name> <ins_type>educational</ins_type> <ins_url>geeksforgeeks.org</ins_url> </ins> </user> </users> XML; // Creating new SimpleXMLElement // object from $user $xml = new SimpleXMLElement( $user ); echo $xml -> count (); foreach ( $xml as $child ){ echo "<br>" . $child [ 'name' ] . " has " . $child -> count (). " child." ; } ?> |
Output:
2 user1 has 5 child. user2 has 5 child.
Reference: https://www.php.net/manual/en/simplexmlelement.count.php