У нас есть стандарт, в котором мы создаем исключения в основном классе для возврата ошибок и т. д. Проблема в том, что всем стандартным сниффам это не нравится. Тогда мы пишем для этого свои собственные сниффы, но подумал, что поинтересуюсь, почему это нежелательно?
Например, у нас есть:
<?php
class FOO_EXCEPTION extends Exception { }
class FOO_EXCEPTION_BAR extends FOO_EXCEPTION { }
class FOO_EXCEPTION_POLE extends FOO_EXCEPTION { }
class FOO
{
public function MethodDoingSomething()
{
if('some condition happens') {
throw new FOO_EXCEPTION_BAR();
}
if('some other condition') {
throw new FOO_EXCEPTION_POLE();
}
...
}
}
?>
Это позволяет нашему коду возвращать различные исключения, чтобы указать, что произошло с вызывающей стороной, но если выделенная функция try/catch недоступна, базовое исключение все равно может быть перехвачено.
Это удобно при работе с базами данных или другими внешними объектами, поскольку природа ошибки может быть возвращена компоненту, расположенному выше в стеке вызовов, для обработки ошибки.
Например, если вы удаляете файл, а этот файл не существует, код может сгенерировать исключение, но у вызывающей стороны есть возможность проигнорировать это, если он не обеспокоен тем, что файл не существует, поскольку он пытался все равно удаляй. Однако другой вызывающий объект может ошибиться из-за отсутствия файла, который должен был существовать на момент его удаления.
CONSTANT_CASE
вместоClassCase
для имени класса? - person meagar   schedule 07.01.2013