<ul>
<li>
<a>name1</a>
<div>
<ul>
<li>
<a>name</a>
<ul>
<li>
<a>name</a>
</li>
<li>
<a>name</a>
</li>
</ul>
</li>
<li>
<a>name</a>
<ul>
<li>
<a>name</a>
</li>
<li>
<a>name</a>
</li>
</ul>
</li>
</ul>
</div>
</li>
<li>
<a>name2</a>
<div>
<ul>
<li>
<a>name</a>
<ul>
<li>
<a>name</a>
</li>
<li>
<a>name</a>
</li>
</ul>
</li>
<li>
<a>name</a>
<ul>
<li>
<a>name</a>
</li>
<li>
<a>name</a>
</li>
</ul>
</li>
</ul>
</div>
</li>
</ul>
По мере того как мы можем найти некоторое <ul>
. Мы бы хотели использовать PHP Simple HTML DOM
для получения массива с данными ul. Мы хотим использовать код:
foreach($html->find('li') as $li) {
}
Но в этом примере мы видим все li
на дисплее: http://prntscr.com/5390mf http://prntscr.com/5390pj
Но мы не знаем, как получить только parrent li:
1.
<li>
<a>name1</a>
</li>
2.
<li>
<a>name2</a>
</li>
И только, чем получить детскую ul
в parrents li
и все дети li
в li
.
Скажите, пожалуйста, как это сделать?
PS: Если я плохо объясню, что я хотел бы получить, напишите
Первый:
foreach($html->find('li',0) as $line) {
}
Второй (если мы можем добавить класс в parrent ul
):
foreach($html->find('ul.parrent_ul->li') as $line) {
}
Наслаждайтесь!
foreach($html->find('ul > li') as $li) {
}
Должен получить только верхний уровень li - тот, который является прямым дочерним элементом ul-элементов
ul->li
в некоторомli
, и, используя ваш код, мы получаем всеul->li
(не только parrent)