Архитектура приложения на php — «правильные» ошибки

Здравствуйте! Есть приложение на php. Есть некий класс с методом
String find(String string)
Он, с помощью полученной строки, неким образом ищет файл и возвращает путь. Довольно часто может возникать ситуация, когда файл не найден. Как правильно возвращать такую ошибку?
Предполагаемые мной варианты (просто мои мысли)
1) Возвращать null. Такой метод кажется правильным, т.к. null можно рассматривать как строку. Но логически это не говорит об ошибке
2) Возвращать false. Такой метод я часто вижу в стандартных функциях php.
3) Выкидывать исключение. Наверное, этот метод самый правильный. Но я слышал, что исключение несет много накладных расходов по ресурсам, а метод вызывается очень часто
Так как делать правильно?
  • Вопрос задан
  • 3627 просмотров
Решения вопроса 2
Если метод вызывается часто, а отсутствие файла не критично, то вернуть false.
Исключения все таки лучше поберечь для аварийных ситуаций, а null - можете и его вернуть,
но false, имхо, информативнее и удобнее для дальнейшего использования.
кстати, вот вам сылочка
Шпаргалка для PHP: FALSE, NULL
Ответ написан
Комментировать
@gro
Если отсутствие файла, это нормальная ситуация, подразумевающая отсутствие данных, то NULL (но никак не FALSE).

Если подразумевается существование файла, то однозначно исключение.

И никода не выбирайте архитектуру на основании "я где-то слышал про какие-то типа расходы".
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ScorpLeX
@ScorpLeX
return FALSE;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы