динамический foreach в foreach - PullRequest
0 голосов
/ 03 июля 2019

Я пытаюсь прочитать случайный веб-сайт HTML с помощью PHP Simple HTML DOM Parser

Например, я пытаюсь прочитать span нанекоторый веб-сайт.

span позиция в body > div[class=row] > span

Я могу использовать этот метод для отлова цели span:

foreach ($html->find('body') as $element) {
    foreach ($html->find('div[class=row]') as $element) {
        foreach ($html->find('span') as $element) {

        }
    }
}

Этот код работает нормально,Но что, если я хочу создать динамическую span позицию?

Например, позиция span была body > div[class=row] > div[class=con] > span, Как я могу сделать ее динамической в ​​foreach?

У меня есть динамический ввод для имен тегов входа, таких как div или что-то.эти входы могут быть 1 или более, я могу отправить тему по Form, но проблема в следующем:

Как сделать достаточно foreach в последнем?как:

Foreach > Foreach > ...

1 Ответ

1 голос
/ 03 июля 2019

Вместо стрелки (>) вы можете использовать пробел (),

foreach ($html->find('body') as $element) {
    // Find all <span> in <div> which class=row 
    foreach ($html->find('div.row span') as $element) {
         // check span data here
    }
}
...