dom — PHP Script пропускает только первую строку

У меня есть простой HTML-анализатор DOM со скриптом, который сохраняет проанализированные данные в базу данных. Но здесь dom пропускает первую строку, в то время как постоянно анализирует все остальные данные. URL, с которого я анализирую данные: http://krushimitra.co.in/4.html.

Также мой PHP-скрипт похож на …

............
ini_set('max_execution_time', 0);

error_reporting(E_ALL);
ini_set('display_errors', '1');
$url='http://krushimitra.co.in/4.html';
include('dom.php');
$html=file_get_html($url);$record_find='first';
foreach($html->find('table#GridView1') as $e){

if($record_find=='first'){ $record_find="second";continue;}
$i=1;
foreach($e->find('tr') as $e1){
if($i<4){$i++;continue;}
$some=trim($e1->find('td', 0)->innertext);
$somea=trim($e1->find('td', 1)->innertext);
$someb=trim($e1->find('td', 6)->innertext);

$col=trim($e1->find('td', 0)->colspan);
if($col == 10){......
...........

и мой дом @ http://sourceforge.net/projects/simplehtmldom/files/.
Я поменял define('MAX_FILE_SIZE', 60000000);,

Я не знаю, почему мой сценарий не учитывает первую строку, здесь это «Bhatiya (транзакция NIL)», у которой colspan равен 10. Пожалуйста, помогите мне решить эту проблему.

0

Решение

Первые 3 строки пропущены этим

$i=1;
if($i<4){$i++;continue;}

Изменить на

if($i<3){$i++;continue;}

и вы получите еще один ряд, который вам нужен.

0

Другие решения

Наконец, после того, как я попробовал так много методов, я нашел наилучшее решение, и это очень простой шаг. Нужны только два небольших изменения в одном экземпляре …

....

if($record_find=='first')
//{ $record_find="second";continue;} // Removed this line
$i=1;
foreach($e->find('tr') as $e1){
if($i<3){$i++;continue;} //made changes here as suggested by @legiero.
$some=trim($e1->find('td', 0)->innertext);
........
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector