Иногда на общих методах бывает необходимость по-разному обрабатывать запрос в зависимости от источника вызова приложения — консоль или браузер. В этой статье пример свойства, которое поможет определить этот момент. На просторах интернета есть много примеров реализации — использование is_a, instanceof, внутренние константы и т.д. Все они хороши, но команда Yii2…

Очень удобная для пользователя фишка — прокрутка страницы к первому полю с ошибкой в случае неуспешной валидации. В этой статье я напишу, как можно просто прокрутить страницу к первой ошибке после валидации yii2. Приведу пример с реального проекта: Все предельно просто. Если после валидации есть поле с классом .has-error —…

Возможна ситуация, когда нужно делать запрос с LIKE-поиском по нескольким полям, но при этом с условием OR. В этой статье пример реализации на Yii2 данной задачи. Всё, на самом деле, просто. Приведу пример: Выше привел конструкцию, которая при условной поисковой фразе «Ивано» сгенерирует следующее условие: По большому счету объяснения не…

Работа с очередями позволяет распараллелить некоторые процессы и\или вынести особо время затратные задачи в очередь. В этой статье я раскажу, как изменить лимит времени на выполнение задачи (max_execution_time). Общие принципы работы с yii2-queue я описывал ранее здесь. Первая мысль, что мне пришла, когда я увидел сообщение об ошибке о завершении…

В процессе разработки часто в качестве атрибута может выступать массив с данными, которые также нужно валидировать. В Yii2 есть необходимый валидатор, о котором мы часто забываем. В этой статье — пример работы с валидатором each для валидации элементов массива. Собственно все достаточно просто. И отлично описано в документации. Другими словами…

Сегодня постараемся разобраться с вопросом генерации ZIP-архива средствами php. На авторство решения не претендую — когда столкнулся с задачей — нашел данный работающий пример на stackoverflow После формирования данного массива можно передавать его в метод ниже и получать результат: Ну вот и весь пример. Если Вам также интересно, как отдавать…

Задача программной отдачи файла может встретиться довольно часто, но не многие знают, что в Yii2 есть встроенный методы, помогающие решить проблему отдачи файла в браузер на скачивание. В этой короткой заметке — пример решения задачи. Поехали! В принципе, все средства описаны в документации. Я лишь приведу несколько примеров и пояснений….

Ещё одна статья в цикле статей с рабочими примерами отправки медиа-файлов в Telegram через API. Сейчас речь пойдет о фото-файлах. В этой и следующих статьях, использую расширение SonkoDmitry\Yii\TelegramBot\Component. За долгое время экстеншн прижился и отлично работает — за что автору огромная благодарность. Для работы примера обязательно нужно установить расширение со…

Продолжаю небольшой цикл статей с наглядными примерами решения задачи отправки медиа-файлов в Telegram при помощи нативного API. Сейчас речь пойдет о видео-файлах. В этой и следующих статьях, использую расширение SonkoDmitry\Yii\TelegramBot\Component. За долгое время экстеншн прижился и отлично работает — за что автору огромная благодарность. Пример подразумевает, что расширение верным образом…

Решил сделать небольшой цикл статей с примерами о том, как отправить медиа-файлы в Telegram при помощи API. Сейчас речь пойдет о аудио-файлах. В этой и следующих статьях, использую расширение SonkoDmitry\Yii\TelegramBot\Component. За долгое время экстеншн прижился и отлично работает — за что автору огромная благодарность. Конечно же, данный пример подразумевает, что…