Yii2 получить код ошибки

Yii2: Обработка ошибок

Обработка ошибок в Yii 2

Обработчик ошибок включен в Yii 2 по умолчанию. Отключить его можно добавив следующий код в стартовый скрипт приложения web/index. php:

Конфигурация по умолчанию

В шаблонах приложений Yii 2 basic и advanced обработчик ошибок подключен как компонент приложения errorHandler. Рассмотрим примеры конфигурации:

Минимальная конфигурация обработчика ошибок использует site/error для отображения ошибок и исключений.

В данном случае нет необходимости в явном создании действия actionError в контроллере SiteController. Если заглянуть в файл SiteController. php, можно увидеть, что там использовано встроенное действие yii\web\ErrorAction, которое отображает информацию через представление views/site/error. php.

Настройка представления и шаблона

Возьмем за основу вышеописанную стандартную конфигурацию.

Представление описывается свойством view класса yii\web\ErrorAction:

В тоже время, шаблон для вывода сообщений об ошибках, можно изменить двумя способами:

1. Явно указав нужный шаблон в файле представления:

2. Указать шаблон в методе beforeAction() класса SiteController:

Свой обработчик ошибок

При необходимости, возможно создание своего метода для обработки ошибок. Например, создадим действие site/fault в контроллере SiteController:

И подключим его в конфигурационном файле:

Готово. Теперь все ошибки будут обрабатываться новым методом actionFault() контроллера SiteController.

Final product imageWhat You’ll Be Creating

Если вы спрашиваете «Что такое Yii?», ознакомьтесь с моим предыдущим учебным пособием: Введение в Yii Framework, в котором рассматриваются преимущества Yii и которое включает обзор нового в Yii 2.0, выпущенного в октябре 2014 года.

В этом курсе Программирование с Yii2 я направляю читателей на использование недавно обновленного Yii2 Framework для PHP. В этом уроке я собираюсь познакомить вас с валидаторами Yii2. Валидаторы упрощают код, необходимый для проверки ввода, то есть проверяют соответствие или несоответствие ввода данных, как правило, от пользователей через веб-формы.

В этих примерах мы продолжим использование кодовой базы приложения Hello, которую мы использовали в прошлых уроках. Используйте ссылки GitHub на этой странице, чтобы получить код.

Просто напоминание, я участвую в ниже выведенных комментариях. Меня особенно интересует, если у вас есть дополнительные идеи или вы хотите предложить темы для будущих учебников. Вы также можете связаться со мной @reifman в Twitter.

Что такое Валидатор?

Если вы являетесь веб-разработчиком, вы, вероятно, знаете, что пользователю нельзя доверять. Например, пользователи могут использовать методы SQL-инъекций, чтобы попытаться запустить запросы, которые изменяют или раскрывают пароли. Кто-то однажды запустил SQL-инъекцию против установки PHPList с открытым исходным кодом и смог открыть один из моих паролей (PHPList сохранял их в виде обычного текста). Чаще всего вы просто хотите убедиться, что данные, которые пользователи предоставляют, соответствуют типам, формам и диапазонам вашего приложения.

Создание валидаторов в PHP вручную требует времени. Yii Framework предоставляет тонну базовых функций проверки, поэтому нет необходимости создавать их с нуля. Но, если вам нужны какие-то пользовательские расширения, это просто.

Какие проверки поддерживает Yii?

В данном разделе опубликована информация, которая призвана решить спорные вопросы и определить порядок действий при их возникновении. Группой разработчиков мы собрали наиболее полный список рекомендаций, который поможет вам в создании новых модулей и приложений на Yii

Бизнес-логика

Бизнес-логике не место в ActiveRecord, контроллере и тем более в представлении. Размещать бизнес-логику необходимо в отдельных классах с говорящими названиями “СущностьДействие”. В результате получаются “худые” контроллер и ActiveRecord. Данный подход повышает читабельность проекта в разы, а также позволяет производить тестирование бизнес-логики.

Миграции в базе данных

Если в проекте используется СУБД MySQL для использования внешних ключей (Foreign keys) и транзакций, в качестве системы хранения данных (Storage engine) должна быть выбрана InnoDB. При создании таблицы в БД необходимо использовать следующую конструкцию:

Структура базы данных

Кеширование и переиспользование данных

Представления

Рекомендации по оформление кода в приложениях Yii 2

Общие положения

Классы

Константы

Свойства

Методы

Переменные
Переменная должна наиболее полно описывать представляемую сущность, это значит, что она должна иметь понятное название, по которому можно судить о ее предназначении.

Комментирование

Область комментирования

Обратите внимание, что комментарий типа # не используется. Это связано с тем, что на основании оставленных комментариев генерируется документация к разрабатываемому программному продукту.

Порядок составления комментария

Требования к комментариям в коде

Рекомендации к комментированию кода

Комментарии к полям (столбцам) таблиц БД

Во время проектирования таблиц БД необходимо добавлять комментарии для полей таблиц:

А также название полей появятся в веб-приложении для администрирования СУБД.

Источники:

https://p0vidl0.info/yii-2.html

https://code. tutsplus. com/ru/tutorials/how-to-program-with-yii2-validations—cms-23418

https://task-on. com/platforma-taskon/rekomendacii-programmirovanie-yii-2

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: