Search
Write a publication
Pull to refresh

Comments 11

А зачем вам __call? Все равно осталось три разных метода, все равно они извне по-разному вызываются, все равно они публичные
IDE не видит такие методы или их надо прописывать вручную, что не очень удобно.

Частично эту проблему можно решить с помощью phpDoc, описав в базовой модели магические методы через @ method
А где ускорение разработки-то? Всего лишь обёртка над парой методов. Вы всё равно должны помнить, как ей пользоваться и что эти методы делают, разве что кода на пару строк меньше писать.
Вот именно для того чтобы писать кода на пару строк меньше это и придумано.
Круто. Еще немного и вы станете ООП-нинзей
Т.е. вместо понятного эксепшена, описывающего суть проблемы в каждом конкретном случае, вы предлагаете обобщить их все в один "'False result!'"?
Статья сугубо чтобы показать технику. У себя в проектах я использую суффикс «Exp404» с исключением CHttpException(404, 'Record not found') — там где это уместно (например в некоторых котроллерах, чтобы не писать 3 строчки вместо одной).

Это не значит что метод нужно применять везде, где возможно возбудить исключение :)
Регексп в __call? Хм.
И вместо того, чтобы вынести сложные ситуации в сервисный слой, оборачивать их какими-то магическими путями? Бросайте вы этот Yii.
Сослепу прочитал заголовок как «Ускоряем работу PHP с помощью перегрузки», и было решил, что тут про замену условий на вызов методов, а оно вон как оказалось.
Sign up to leave a comment.

Articles