Как я могу исключить первый <tr> - PullRequest
0 голосов
/ 07 марта 2012

С php dom я получаю все TR и TD внутри.

<?PHP
foreach($table->getElementsByTagName('tr') as $tr){
   echo $tr->getElementsByTagName('td')->item(0)->nodeValue);
}
?>

Можем ли мы исключить первый tr и его tds.

Ответы [ 3 ]

1 голос
/ 07 марта 2012

Я думаю, что список узлов имеет числовую индексацию (хотя я не могу его проверить), поэтому использование ключа в foreach может работать:

foreach($table->getElementsByTagName('tr') as $key => $tr){
   // Don't act on the first element
   if ($key > 0) {
     echo $tr->getElementsByTagName('td')->item(0)->nodeValue);
   }
}
0 голосов
/ 07 марта 2012

Сравните индекс элементов, если он первый, и используйте continue для пропуска цикла.

<?PHP
foreach($table->getElementsByTagName('tr') as $index => $tr){
   if($index == 0) { continue; }
   echo $tr->getElementsByTagName('td')->item(0)->nodeValue);
}
?>
0 голосов
/ 07 марта 2012

плохой метод, но работает:

<?PHP
$first = false;
foreach($table->getElementsByTagName('tr') as $tr){
   if($first){
     echo $tr->getElementsByTagName('td')->item(0)->nodeValue);
   }
 $first = true;
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...