Я недавно получил сообщение об ошибке при развертывании приложения. Он использовал «is_readable» в пути внутри пути include, но тот, который был ограничен «open_basedir». Это дало мне фатальную ошибку. Есть ли еще одна функция, которую я мог бы использовать, чтобы увидеть, может ли файл быть включен, прежде чем включать его?PHP is_readable problem with open_basedir
Edit: это работает, но как я могу обнаружить, если ошибка была потому, что включают в себя несостоявшимся или из-за какой-то ошибки внутри включаемого файла?
try {
include 'somefile.php';
$included = true;
} catch (Exception $e) {
// Code to run if it didn't work out
$included = false;
}
Если ваша фреймворк выбрасывает все как исключение, как вы прокомментировали ниже, вы можете войти в функцию обработчика ошибок и проверить, какая степень серьезности возникшей ошибки. Или настройте свой собственный сверху. На самом деле нет ограничений на количество настраиваемых обработчиков ошибок, которые вы можете использовать. –
На самом деле вы даже можете получить серьезность от самого ErrorException, но как это может помочь мне определить, вызвало ли фактическое включение ошибку? –