✅ Новости WEB и WordPress, темы, плагины. Здесь мы делимся советами и лучшими решениями для веб-сайтов.

Настоящие обработчики исключений в PHP и Javascript

30

@Jordan Hall публикует в Твиттере настоящие обработчики исключений в PHP и Javascript.

Обработчик исключений Javascript

try {
  // something
} catch (e) {
   window.location.href = "<a class="vglnk" target="_blank" href="http://stackoverflow.com/search?q=[js" rel="nofollow"><span>http</span><span>://</span><span>stackoverflow</span><span>.</span><span>com</span><span>/</span><span>search</span><span>?</span><span>q</span><span>=[</span><span>js</span></a>] + "
                        + e.message;
}

Поэтому, если что-то пойдет не так, страница будет перенаправлена ​​​​в stackoverflow для ответов.

Обработчик исключений PHP

Аналогично, вот версии PHP:

try {
  // something
} catch (Exception $e) {
  header("Location: <a class="vglnk" target="_blank" href="https://stackoverflow.com/search?q=[php" rel="nofollow"><span>https</span><span>://</span><span>stackoverflow</span><span>.</span><span>com</span><span>/</span><span>search</span><span>?</span><span>q</span><span>=[</span><span>php</span></a>] ".$e->getMessage());
}

Вы можете разделить try-catch на два файла и позволить серверу автоматически обернуть ваш PHP-код внутри этого большого try-catch.

Вам понадобятся директивы phps auto_prepend_file и auto_append_file. и изменить. htaccess- файл.

php_value auto_prepend_file "/path/to/file/before.php"
php_value auto_append_file "/path/to/file/after.php"

Поместите следующее в файл before.php

а остальное поместите в after.php

} catch (Exception $e) {
  header("Location: <a class="vglnk" target="_blank" href="https://stackoverflow.com/search?q=[php" rel="nofollow"><span>https</span><span>://</span><span>stackoverflow</span><span>.</span><span>com</span><span>/</span><span>search</span><span>?</span><span>q</span><span>=[</span><span>php</span></a>] ".$e->getMessage());
}

Кроме того, вы можете поместить эти определения в php.ini (требуется режим cgi, влияет на весь веб-сервер).

auto_prepend_file  = "/path/to/file/before.php"
auto_append_file   = "/path/to/file/after.php"

Источник записи: helloacm.com

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее