Теги: PHP

Laravel. События, слушатели и подписчики

События в Laravel представлены реализацией паттерна Observer, что позволяет подписываться и прослушивать события приложения. Как правило, классы событий находятся в директории app/Events, а классы обработчиков событий — в app/Listeners. Класс события не содержит логики — это просто контейнер для объекта.
Категория: Web-разработкаYii2 и Laravel

Laravel. Работа с БД. Часть вторая — конструктор запроса

Конструктор запроса предоставляет удобный интерфейс для создания и выполнения запросов к базе данных. И может использоваться для выполнения большинства типов операций. Конструктор использует привязку параметров к запросам средствами PDO для защиты от SQL-инъекций. Нет необходимости экранировать строки перед их передачей в запрос.
Категория: Web-разработкаYii2 и Laravel

Laravel. Работа с БД. Часть первая — сырой запрос

У Laravel для работы с базой данных есть механизм под названием Eloquent, плюс имеется мощный конструктор запросов (Query Builder), но иногда необходимо написать просто «сырой» запрос (Raw Query). Это можно сделать с помощью фасада Illuminate\Support\Facades\DB, который имеет методы для каждого типа запроса.
Категория: Web-разработкаYii2 и Laravel

Laravel. Отправка почты по событию

Пусть у нас есть форма обратной связи на сайте. После отправки сообщения происходит отправка письма с данными этой формы. Но вместо того, чтобы просто отправить письмо, мы возбудим событие, перехватим его в слушателе и только после этого отправим письмо. Смысла в этом особого нет, сделано с целью изучения Laravel.
Категория: Web-разработкаYii2 и Laravel

Laravel. Отправка письма из приложения

Отправку почты рассмотрим на примере формы обратной связи с полями «Имя», «Почта» и «Сообщение». Нам потребуется создать контроллер, который будет показывать фому и обрабатывать POST-запрос от клиента. Потом добавим два роута и создам шаблон с формой. После этого нам потребуется создать класс FeedbackMailer…
Категория: Web-разработкаYii2 и Laravel

Laravel. Мягкое удаление (soft deletes)

Кроме обычного удаления записей из базы данных, Eloquent также умеет удалять модели без удаления. При таком удалении модель на самом деле остаётся в базе данных, но в таблице БД устанавливается атрибут deleted_at. Если у модели ненулевое значение deleted_at, значит было использовано псевдоудаление.
Категория: Web-разработкаYii2 и Laravel

Магазин на Laravel 7, часть 24. Фильтр товаров категории по цене, новинкам и лидерам продаж

Поскольку у нас теперь товары имеют атрибуты new, hit и sale, мы можем их отбирать по этим атрибутам. Другими словами — реализовать фильтр товаров. Давайте создадим шаблон filter.blade.php в директрии views/catalog/part и подключим его в шаблоне views/catalog/category.blade.php.
Категория: Web-разработкаYii2 и Laravel

Laravel. Аксессоры и мутаторы

Аксессоры (accessors) и мутаторы (mutators) позволяют модифицировать значения атрибутов Eloquent при их чтении или записи в экземпляры моделей. Допустим, у нас есть таблица базы данных users и соотвествующая ей модель User. В таблице есть поля first_name (имя) и last_name (фамилия).
Категория: Web-разработкаYii2 и Laravel

Магазин на Laravel 7, часть 23. Главная страница сайта, новинки, лидеры продаж и распродажа

На главной странице сайта будем показывать новинки, лидеров продаж и товары распродажи. Для этого нам надо добавить в таблицу базы данных products три новых поля — new, hit и sale. Тогда для главной страницы сможем отобрать и показать три коллекции. Потребуется добавить на форму для редактирования товара три checkbox-а.
Категория: Web-разработкаYii2 и Laravel

Laravel. Шаблонизатор Blade. Часть 2 из 2

Стек — это заглушка где-то в родительском шаблоне. А дочерние шаблоны могут вставлять свое содержимое на место этой заглушки. Причем старое содержимое при этом не теряется, а новое вставляется перед старым или после него. Это похоже на php-функции array_push() и array_unshift(), которые добавляют элемент в конец или начало массива.
Категория: Web-разработкаYii2 и Laravel
Каталог оборудования
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Производители
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Функциональные группы
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.