У меня было приложение под названием GrabUrTime, это утилита для просмотра расписания, которая получает свои расписания с другого сайта, веб-пространства моего университета.Каждые два часа я запускаю скрипт, который очищает все расписания с помощью парсера и сбрасывает его в свою базу данных.
Но сегодня сервер универа работает плохо, и мой скрипт продолжает выдавать ошибку 500 на сервере уни, из-за чего скрипт не может продолжать работать.Периодически, не всегда.Однако я пробовал несколько раз, и это просто происходит случайным образом, без паттерна вообще.
Поэтому я хочу, чтобы мой скрипт обрабатывал ошибку и выполнял цикл до тех пор, пока не получит данные.
function grabtable($intakecode, $week) {
$html = file_get_html("http://webspace.apiit.edu.my/schedule/intakeview_intake.jsp?Intake1=".$intakecode."&Week=" . $week);
$dumb = $html->find('table[border=1] tr');
$thatarray = array();
for ($i=1; $i < sizeof($dumb);++$i){
$arow = $html->find('table[border=1] tr', $i);
$date = $arow->find('td font', 0)->innertext;
$time = $arow->find('td font', 1)->innertext;
$room = $arow->find('td font', 2)->innertext;
$loca = $arow->find('td font', 3)->innertext;
$modu = $arow->find('td font', 4)->innertext;
$lect = $arow->find('td font', 5)->innertext;
$anarray = array($date, $time, $room, $loca, $modu, $lect);
$thatarray[$i] = $anarray;
//echo "arraylol";
}
//echo serialize($tablearray)."<br/>";
$html->clear();
return $thatarray;
}