PHP UP | Урок №9 | Часть #2 | Yii 2 components (компоненты)

preview_player
Показать описание
Вся необходимая информация, ссылки и задания к уроку находятся на странице:
Рекомендации по теме
Комментарии
Автор

Впервые увидел обращение к значению массива через ссылку &$value. Очень жаль что я не услышал разъяснений. Раньше вы обращали внимание на подобные мелочи и грамотно всё разъясняли, что делало вас лучшим среди всех. Сейчас же создается впечатление торопливости. Я не придираюсь, а просто обращаю ваше внимание на это ) А так, то что вы делаете - большое вам спасибо за это!

Vladislavable
Автор

Спасибо большое, урок, как всегда, супер.
Виктор, всё понятно, но хотелось бы услышать про разделение логики в MVC, а то проделанной работы за 2 курса много, всё в принципе разжевали, теперь хотелось бы услышать про семантику Mvc

amikawa
Автор

Может кому-то пригодится.
Если использовать кириллицу в базе данных, то функция substr может неправильно обрезать строку, лучше использовать фунцию mb_substr

lmtqqxb
Автор

Виктор, подскажите пожайлуста:
У нас есть МВЦ, каждый из трех элементов которого не должен нести в себе бизнес логики.
Вся суть правильной архитектуры в том, что:
1) Мы все однотипные задачи(в моем понимании методы, которые могут висеть в модели), которые нужно использовать много раз переносим с модели в компонент, и с радостью его вызываем
2) Более-менее большие части сайта пишем в модулях
3)Базовую структуру используем как == Модель -- CRUD(только доступ к данным) Представление -- выгрузка данных + виджеты Контроллер -- передергивание данных от вьюшки, при этом он сам туп, и точно так же как и модель не имеет понятия о сути того, что творит
Правильно ли?
Таким образом, я так понимаю, у нас MVC и фреймворк служит только как инструмент, а описанных выше первые 2 пункта уже реальное решение проблемы, и так всё на практике и юзается.
Что скажете?

alexkhonko
Автор

Понятно, спасибо. То есть в компонент выносится логика, что может быть использована во многих местах. Для соблюдения DRY. Только вот в моделе уже реализовано ORM, зачем использовать чистый SQL?

olegpristashkin
Автор

Почему в StringHelper вне конструктора нельзя обращаться к методам приложения? на 11:25

aleksandrpetrov
Автор

А разве нормально прогонять цикл и изменять результат? как вариант можно обрезать текст прям в запросе, но чуть напряжнее это будет вынести в настройки
понятно что это пример, ну и вопрос цикл лучше чем array_map ?

compolomus
Автор

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

sayatbazarkanov