Рубрика «yii»

PHP-Дайджест № 147 (1 – 14 января 2019) - 1

Свежая подборка со ссылками на новости и материалы. В выпуске: обновления всех веток PHP, Deployer 6.4, doctrine/migrations 2.0, Psalm 3 и другие релизы, Никита Попов в JetBrains, новости PHP Internals, порция полезных инструментов, видео, и многое другое.
Приятного чтения!

Читать полностью »

PHP-Дайджест № 146 (10 – 24 декабря 2018) + Итоги 2018 года - 1

По традиции подведем итоги уходящего года и вспомним самые значимые события в мире PHP. И конечно, ссылки на свежие новости, полезные инструменты и интересные материалы за последние две недели.

Под катом вас также ждет розыгрыш лицензий на PhpStorm от JetBrains.

Приятного чтения и с наступающим Новым годом!

Читать полностью »

PHP-Дайджест № 145 (26 ноября – 10 декабря 2018) - 1

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.3.0, Symfony 4.2, Composer 1.8.0 и другие релизы, конец поддержки PHP 5.6 и PHP 7.0, свежие предложения из PHP Internals, порция полезных инструментов, видеозаписи докладов и многое другое.
Приятного чтения!

Читать полностью »

Подержанное авто в кредит за 1 минуту - 1

Вместо введения

Как и все интересные истории, эта началась достаточно давно и неожиданно. Однажды наш банк-партнер пришел к нам и сказал: “Ребята, мы научились делать скоринг в нашей системе за одну минуту. Как насчет того, чтобы объединить наши усилия и интегрировать проекты? С нас – решение и кредит, с вас – машины”. Сказать, что мы воодушевились, – ничего не сказать! Мы имели все шансы стать первыми чуть ли не в мире, кто может дать кредит онлайн на подержанное авто за одну минуту (ОДНУ МИНУТУ, КАРЛ)! Ниже я расскажу, что из этого получилось, но для начала расскажу вам, кто такие, собственно, МЫ.Читать полностью »

PHP-Дайджест № 144 (12 – 26 ноября 2018) - 1

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.3.0RC6, PhpStorm 2018.3 и другие релизы, Symfony покидает PHP-FIG, свежие предложения и новости PHP Internals, порция полезных инструментов, видеозаписи с прошедших митапов и конференций и многое другое.
Приятного чтения!

Читать полностью »

PHP-Дайджест № 143 (1 – 12 ноября 2018) - 1

Свежая подборка со ссылками на новости и материалы. В выпуске: принят PSR-18, статистика версий PHP от Packagist, анонсы митапов и карта митапов, PHP 7.3.0RC5 и другие релизы, порция полезных инструментов, о будущем PHP-дайджеста, и многое другое.
Приятного чтения!

Читать полностью »

Для того чтобы быстро поднять рабочее окружение существует много способов. Один из них — поднять все необходимые сервисы в Docker-контейнерах. Чтобы ускорить создание новых проектов на Yii-framework я написал такую небольшую инструкцию, которую используют разработчики в нашей команде.

Читать полностью »

В yii по умолчанию используется шаблонизатор для view чистый php. К сожалению, это может привести к ошибкам экранирования вывода. Разработчик выводимый контент должен экранировать, используя Html::encode(), либо аналог. Обычно, для поиска подобных ошибок, пентестер забивает во все возможные поля форм код вида:

<script>alert(document.cookie);</script>

Потом проходиться по всему проекту и смотрит что упало. Но иногда бывает, что форма выводиться не полностью. Если же атрибуты будут посланы явно отдельным запросом Post, то будут загружены в модель. Либо сейчас заполнить атрибут через форму пользователь не может, и все хорошо, а через месяц форма меняться, параметр становиться доступен для редактирования, и где-то в совсем другой части проекта проявляется XSS.
Читать полностью »

Вступление

Многие начинающие веб-разработчики сталкиваются с необходимостью создания меню, каталогов или рубрикаторов для своего проекта на Yii2, которые бы имели иерархическую структуру, но при этом поддерживали мультиязычность. Задача довольно простая, но не совсем очевидная в рамках данного фреймворка. Есть большое количество готовых расширений для создания древовидных структур (меню, каталогов итд.), но довольно сложно найти решение, которое бы поддерживало полноценную работу с несколькими языками. Причём речь тут идёт не о переводе интерфейса штатными средствами фреймворка, а про хранение данных в базе на нескольких языках. Также достаточно сложно найти удобный и полностью работоспособный виджет для управления деревом, который мог бы также работать с многоязычным контентом без сложных манипуляций с кодом.

Я хотел бы поделиться рецептом того, как можно создавать подобные модули на примере реализации модуля меню. Для примера я буду использовать шаблон приложения Yii2 App Basic, но вы можете адаптировать всё под свой шаблон, если он отличается от базового.

Читать полностью »

PHP-Дайджест № 139 (3 – 17 сентября 2018) - 1

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.3 RC 1, PhpStorm 2018.3 EAP, Laravel 5.7 и другие релизы, HHVM прекращает поддержку PHP, типизированные свойства в PHP, порция полезных инструментов, видеозаписи докладов, и многое другое.
Приятного чтения!

Читать полностью »