Checks whether the current element has sub elements

- « SimpleXMLElement::getChildren

- SimpleXMLElement::key »

- PHP Manual
- SimpleXMLElement
- Checks whether the current element has sub elements

# SimpleXMLElement::hasChildren

(No version information available, might only be in Git)

SimpleXMLElement::hasChildren — Checks whether the current element has sub elements

### Description

public SimpleXMLElement::hasChildren(): bool
Warning

Prior to PHP 8.0, SimpleXMLElement::hasChildren() was only declared on the subclass SimpleXMLIterator.

This method checks whether the current SimpleXMLElement element has sub-elements.

### Parameters

This function has no parameters.

### Return Values

`true` if the current element has sub-elements, otherwise `false`

### Examples

Example #1 Check whether the current element has sub-elements

    <?php
    $xml = <<<XML
    <books>
        <book>
            <title>PHP Basics</title>
            <author>Jim Smith</author>
        </book>
        <book>XML basics</book>
    </books>
    XML;

    $xmlElement = new SimpleXMLElement($xml);
    for ($xmlElement->rewind(); $xmlElement->valid(); $xmlElement->next()) {
        if ($xmlElement->hasChildren()) {
            var_dump($xmlElement->current());
        }
    }
    ?>

The above example will output:

    object(SimpleXMLElement)#2 (2) {
      ["title"]=>
      string(10) "PHP Basics"
      ["author"]=>
      string(9) "Jim Smith"
    }