Intereting Posts
Laravel slash после перенаправления URL-адресов в корневую папку Почему Code Igniter дает мне белую страницу? Как отображать адрес электронной почты для пользователей, но скрывать от робота? Есть ли простой способ сделать это с помощью PHP, Javascript или JQuery? подготовленный параметризованный запрос с PDO Разрывы строк в контактной форме PHP $ _SERVER возвращает / htdocs not / public_html загрузка на сервер mysql не работает Как переопределить путь PHP для использования пути MAMP? Подходы к тайм-ауту сеансов в веб-приложении с использованием AJAX autorefreshes PHP-массив папок в каталоге и показать файлы в каждой папке Как передать параметр в ограничение проверки в Symfony2 – в yml Заголовки, используемые для загрузки файла php Получить услугу запроса из класса DataTransformer Помогите понять этот файл загрузки кода PHP Как получить прозрачный фон после ротации png-изображения с помощью php?

PHP DOM получает элементы из первого элемента ul

У меня есть html-файл, который выглядит так:

<ul> <li>item 1</li> <li>item 2</li> <li>item 3</li> </ul> <ul> <li>smth 1 2 3..</li> <li>another</li> <ul> <ul> <li>smth 1 2 3..</li> <li>another</li> <ul> 

Я пытаюсь получить элементы только из первого списка ul. Я использую этот код, но он возвращает ошибки:

 <?php $dom = new DOMDocument(); $dom->loadHTML($data); $postalCodesList = $dom->getElementsByTagName('ul'); foreach ($postalCodesList->item(0) as $postalCodesList) { echo $postalCodesList->nodeValue.'<br />'; } ?> 

Solutions Collecting From Web of "PHP DOM получает элементы из первого элемента ul"

Передача DomNode для foreach не позволит вам выполнять итерацию через своего дочернего элемента, вы можете легко получить список li s и выполнить итерацию через них.

 <?php $dom = new DOMDocument(); $dom->loadHTML($data); $postalCodesList = $dom->getElementsByTagName('ul'); foreach ($postalCodesList->item(0)->getElementsByTagName('li') as $postalCodesList) { echo $postalCodesList->nodeValue.'<br />'; } ?> 

DEMO