PHP: documentElement-> предупреждение childNodes

$xml = file_get_contents(example.com); $dom = new DomDocument(); $dom->loadXML($xml); $items = $dom->documentElement; foreach($items->childNodes as $item) { $childs = $item->childNodes; foreach($childs as $i) { echo $i->nodeValue . "<br />"; } } 

Теперь я получаю это предупреждение в каждом втором foreach:

 Warning: Invalid argument supplied for foreach() in file_example.php on line 14 

Пожалуйста, помогите парням. Благодаря!

Некоторые узлы не имеют дочерних элементов, поэтому вы передаете нулевой (недопустимый) аргумент в foreach (как указано в предупреждении).

Чтобы избежать предупреждений, вам нужно проверить, есть ли у текущего узла какие-либо дети. Для этого вы можете использовать метод DOMNode::hasChildNodes() :

 foreach($items->childNodes as $item) { if ($item->hasChildNodes()) { $childs = $item->childNodes; foreach($childs as $i) { echo $i->nodeValue . "<br />"; } } }