На дворі 2017-ий рік і досить значна частина спільноти PHP намагається використовувати
PSR: PHP standard recommendation, мета яких — дати можливість замінювати окремі частини фреймворків. Серед PSR-ів є PSR-3, в якому описується інтерфейс для логер. На даний момент існує безліч сумісних з PSR-3 бібліотек, в числі яких широко застосовуваний Monolog.
На тему PSR-3 і Yii 2.0 часто задають такі питання:
  1. Чому Yii 2.0 не сумісний з PSR-3?
  2. Як мені писати повідомлення в сумісний із PSR-3 логгер?
  3. чи Є в планах зробити логгер Yii сумісним з PSR-3 і випиляти в окремий пакет?
Розберемо кожен докладно.
Читати далі →

Спочатку я написав розлоге передмову до цього тексту, а потім видалив його. Загалом, цей текст для тих, хто як і я, любить спочатку зробити, а потім вже розбиратися з тим, що ж він таке зробив. Щоб зібрати нижеизложенную інформацію мені довелося три дні посилено шукати в різних джерелах. Так що, сподіваюся кому і придасться. Це годна шпаргалка.

1. Встановлюєте Yii2 Basic на сервер, як написано в документації. Описано там все чітко і по справі, додати мені нічого.

Хіба що ось: локально на OpenServer поставило без сучка, без задирки. А ось віддалено, на KVM Ubuntu 16.04 з 1гб оперативки Composer-не вистачило пам'яті. Бився дві години, так і не подужав. Благо, що з локального сервера на віддалений сайт можна легко перенести простим копіюванням.

2. Повторюся, установка — basic (припустимо, в папку /www/site/basic, але далі ми для простоти викладу будемо вести відлік саме від папки basic в яку ви створили проект, як рекомендується в керівництві).

Папку basic/web відразу встановлюєте як DocumentRoot — як це зробити, теж є в офіційному керівництві російською мовою.

Читати далі →

Yii 2.0.11

Відбувся реліз 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

В останні дні було зареєстровано три уразливості, які стосуються PHPMailer і SwiftMailer:
Всі три звіту про уразливість згадують фреймворк Yii поряд з іншими PHP-фреймворками як уразливий, тому мета цієї статті — з'ясувати, хто саме схильний до цієї проблеми і що потрібно зробити для того, щоб убезпечити себе.
Читати далі →

Yii2 RESTful API-інтерфейс для AngularJS


Здрастуйте, дорогі читачі! Судячи з вашим коментарям попереднім статтям, багатьом з вас дуже цікаво, як саме ми будемо використовувати AngularJS в зв'язці з нашим додаток на Yii2 фреймворку. У цій статті я підніму завісу і опишу процес підключення фреймворку AngularJS і способи його застосування.
Читати далі →

Віджет багатомовності в YII2 без використання бази даних

Приклад інтернаціоналізації сайту на Yii2 на двох мовах: ru en. У Yii2 вже вбудований компонент відповідає за інтернаціоналізацію, називається він i18n. Для того що б можна було почати ним користуватися, досить додати його у конфігурацію програми в розділ components.

Я використовую шаблон advanced тому розташування файлів можуть відрізнятися.

Мета

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

Читати далі →

Yii2-advanced: альтернативне розміщення папок для декількох додатків

Хочу поділитися альтернативним рецептом файлової структури для декількох додатків в Yii2-advanced, не вдаючись до модулів. Зовнішні відмінності, до яких ми прийдемо, виглядають наступним чином:

Кінцева файлова архітектура

Читати далі →

Новини Yii 2. №1

З тих пір, як розширення PHP-фреймворку Yii переїхали в окремі репозиторії і почали релизиться незалежно, змін на кожен реліз у них стало менше і писати на хабре про кожне окремо стало якось не правильно. То ж і про новини. Начебто і важливо, але окремо на статтю не тягне. Однак, новин накопичилося достатньо, тому пропоную почитати найцікавіші.
Читати далі →