Рубрика «yii» - 16

в 19:24, , рубрики: framework, php, yii

Состоялся релиз PHP фреймворка Yii версии 2.0.11. Инструкции по обновлению и установке можно найти на официальном сайте http://www.yiiframework.com/download/.

Версия 2.0.11 содержит более 110 улучшений и исправлений.

Четыре небольших изменения могут затронуть существующие приложения, так что стоит обратить внимание на UPGRADE.md.

Огромное спасибо нашему замечательному сообществу. Мы сделали это вместе!

За процессом разработки Yii 2 можно следить поставив звёздочку на GitHub. Также у нас есть Twitter и Facebook.

Так как уже ведутся работы над Yii 2.1, убедитесь, что версия фреймворка в composer.json прописана как ~2.0.11. В противном случае после релиза 2.1 проект может поломаться.

Далее мы рассмотрим самые интересные изменения и улучшения, вошедшие в релиз. Полный список доступен в CHANGELOG.

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

В последние дни было зарегистрировано три уязвимости, касающиеся PHPMailer и SwiftMailer:

Все три отчёта об уязвимостях упоминают фреймворк Yii наряду с другими PHP фреймворками как уязвимый, потому цель этой статьи — прояснить, кто именно подвержен этой уязвимости и что нужно сделать для того, чтобы обезопасить себя.

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

В Yii2 есть возможность реализовать три варианта интернационализации:

1. Файл с массивом, вида: ключ=>перевод (гибко);
2. Файл с расширением .po,.mo бинарный (нужен компилятор, быстро);
3. База данных mysql, две таблицы для ключей и переводом (лучшая реализация при именовании уникальных категорий или привязанных к странице так как yii вытягивает по категории все ключи );

Или свой вариант взяв за основу хранения переводов в базе но со своим управлением (формирования ключей, переводов и их хранения).

Основное

Вызов перевода остается стандартным Yii::t(). Хранить переводы с ключами будем в MySQL. Временное хранилище по текущему языку будет в Redis. Сбор ключей (категорий) остается прежним.

В чем плюсы:

  • быстрее;
  • гибче;

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

Приветствую всех! На текущем проекте мы используем Yii2 и в процессе разработки понадобилась некая сущность как модуль.

В Yii2 уже реализована модульная система, но есть один минус в том что модуль не позволяет выводить один модуль в другом модуле, а использования виджетов тоже не подходит, т.к. это часть вида и не умеет обрабатывать действия, например входящий POST-запрос (хотя одно время мы использовали виджеты так с некими костылями).
Читать полностью »

Пример интернационализации сайта на Yii2 на двух языках: ru и en.

В Yii2 уже встроен компонент отвечающий за интернационализацию, называется он i18n. Для того что бы можно было начать им пользоваться, достаточно добавить его в конфигурацию приложения в раздел components.

Я использую шаблон advanced поэтому расположение файлов могут отличаться.

Цель

  1. переключение сайта между двумя языками: ru и en;
  2. отображение языка в адресной строке в виде site.com/en/;
  3. автоматическое перенаправление пользователя на наиболее подходящий для него язык, если он перешел на сайт без указания языка;
  4. хранение переводов должно осуществляться в PHP файлах в виде массивов;

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

Изображение коммита

Выбирая сервис для хранения моих данных, важной составляющей является то, как долго такой сервис будет жить. От него нужно, чтобы я смог хотя бы прочитать сохраненные данные даже если энтузиазм авторов проекта закончится вместе с деньгами для оплаты хостинга и базы данных. С таким подходом для своего проекта я искал сервисы баз данных, которые могли бы хранить пользовательские данные бесплатно. Многообещающим проектом был Parse.com, о котором я уже писал ранее в статье «Сайт без бекенда». Но в январе 2016 мы узнали, что Parse.com проживет только один год и будет закрыт. В связи с этим я решил перевести хранение данных пользователей в git-репозиторий, который опубликован на Github.

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

image

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

Я постараюсь рассказать, как использовал паттерн Repository в проекте, какие достоинства и недостатки были выявлены, как это повлияло на разработку в целом и какой профит был получен.
Читать полностью »

Написать свою Debug-панель в Yii очень просто. Поэтому рассмотрим чуть практичную (с вызовом api PHPStorm) панель просмотра вьюшек.
Читать полностью »

Хочу поделиться альтернативным рецептом файловой структуры для нескольких приложений в Yii2-advanced, не прибегая к модулям. Внешние отличия, к которым мы придем, выглядят следующим образом:

Конечная файловая архитектура

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

image

По слухам сегодня должен состояться релиз 7.1. Поэтому хотелось бы немного оглянуться назад и посмотреть, а как же php вырос из набора костылей и подпорок в полноценный язык для веба. Прямо по шагам, т.е. по версиям. А в конце хотелось бы немного поразжигать поразмыслить о роли php в современной экосистеме.

Давайте мысленно вернемся во времена php4, когда получили своё развитие wordpress, bitrix и миллионы других CMS и домашних страничек.

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js