Я запускаю какой-то общий код php / mysql, который постоянно работает нормально, затем я запускаю html dom parser (http://simplehtmldom.sourceforge.net/),, затем я ХОЧУ перенаправить на страницу ошибки ЕСЛИ И ТОЛЬКО ЕСЛИ сdom-парсер, но если нет, продолжите с дополнительным скриптом php / mysql, который также в настоящее время работает нормально. Вот как выглядит мой код:
//First do some php/mysql operations here - these are all working fine
$html = file_get_html($website);
foreach($html->find('a[href!=#]') as $element) {
Do several things here
}
//Then finish up with some additional php/mysql operations here - these are all working fine
В большинстве случаев он работает отлично, но оВ 10% случаев, в зависимости от веб-сайта, который назначен переменной $ website, я получаю предупреждение, а затем фатальную ошибку. Например, когда я помещаю «https://www.liftedlandscape.com/” в переменную $ website:
Предупреждение: file_get_contents (https://www.liftedlandscape.com/): не удалось открыть поток: сбой HTTP-запроса! HTTP / 1.0 400 Неправильный запрос в /home/test/test.test.com/simple_html_dom.php в строке 75
Неустранимая ошибка: вызов функции-члена find () для логического значения в /home/test/test.com/login/create_application.php в строке 148
Я в порядке сошибка происходит каждый раз иотя;Я просто хочу создать обработчик ошибок, который соответствующим образом реагирует на случаи ошибок.Я хочу убедиться, что код php / mysql перед парсером dom всегда запускается.Затем запустите анализатор dom, затем запустите оставшуюся часть сценария, если функции синтаксического анализатора dom работают правильно, но если есть ошибки, описанные выше с анализатором dom, перенаправьте пользователей на страницу с ошибкой.
У меня естьпробовал многочисленные итерации безуспешно.Вот моя последняя попытка:
function errorHandler($errno, $errstr) {
echo "Error: [$errno] $errstr";
header('Location:
https://test.com/login/display/error_message.php');
}
//First do some other php/mysql operations here
$html = file_get_html($website);
foreach($html->find('a[href!=#]') as $element) {
Do several things here
}
//Then finish up with some additional php/mysql operations here
Клянусь, это действительно сработало один раз, но потом не сработало.Он только возвращает те же ошибки, перечисленные выше, без перенаправления пользователя.Может кто-нибудь помочь, пожалуйста?