| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Что лучше возвращать из функции/метода при ошибке |
| Автор: Gold Dragon 20.9.2012, 10:27 | ||
собственно вариантов не так много...
Может вопрос и философский, но всё же... Я вот смотрю что PHP переходит на возврат NULL.. тем более есть is_null() Что думаете? |
| Автор: Fortop 20.9.2012, 10:46 |
| null - это отсутствие чего-либо. Если у вас функция/метод не возвращает данные, то достаточно 2х состояний true/false независимо от того была ли ошибка или нет. Если у вас есть данные, то имеем 3 состояния - данные/нет данных/ошибка Вместо "нет данных" отлично подходит null или array() Для ошибки false. Усложняем. Считаем что true/false это данные. Тогда нам нужно как-то сигнализировать об ошибке, поэтому можем использовать третье состояние для этого. Для методов вообще все просто. throw Exception и все. |
| Автор: Gold Dragon 20.9.2012, 10:56 | ||||||
| я сейчас не беру Exception, это совсем другой случай... Я говорю о результате, т.е. Если всё прошло удачно и данные есть то .... Если нет NULL... Просто хочется узнать что народ больше применяет на практике. С другой стороны что лучше/быстрее/правильнее/красивее проверять?
или
третий вариант наверное менее приветлив ну или более специфичный, т.к. например, есть такие функции которые при правильном ответе возвращают ноль (позиция найденного символа в строке)... Добавлено через 14 минут и 42 секунды не выдержал
|
| Автор: baldina 20.9.2012, 11:11 |
| лучше - что очевидно. false (и тем более null) не самый лучший в мире способ, но так поступает большинство встроенных функций. так что myFunc === result Добавлено через 1 минуту и 2 секунды возьми, все упростится |
| Автор: Gold Dragon 20.9.2012, 11:14 |
вот в принципе именно с этим и связан мой вопрос |
| Автор: Чучмек 21.9.2012, 09:19 |
Еще можно -1 Если результат функции не bool, то false |