Предлагаем вашему вниманию очередную подборку со ссылками на новости и материалы.
Приятного чтения!
Новости и релизы
- Composer 1.0.0-beta1 — Спустя 4 года после первого альфа-релиза, вышла в свет бета-версия менеджера пакетов. Добавлены команды
show --tree
для отображения установленных пакетов в виде дерева,why-not
— показывает почему нельзя уставить пакет,update --interactive
— позволяет выбрать какие пакеты обновлять, а также множество других улучшений и исправлений. - Xdebug 2.4.0 — Обновление популярного отладчика, добавлена поддержка PHP 7 и несколько новых возможностей.
- PHP 5.5.33, 5.6.19, 7.0.4
- PhpStorm 2016.1 RC1 и новая система версионирования релизов JetBrains
- Peachpie Compiler — PHP компилятор для .NET.
- Badoo перешли на PHP7 и сэкономили $1M
PHP
- RFC: Null Coalesce Equal Operator — Предлагается реализовать комбинированный оператор
??=
в дополнение к обычному??
, добавленному в PHP 7.// Следующие две строки эквивалентны $this->request->data['comments']['user_id'] = $this->request->data['comments']['user_id'] ?? 'value'; $this->request->data['comments']['user_id'] ??= 'value';
- RFC: Short ternary Equal Operator — Также предлагается реализовать комбинированный тернарный оператор:
$x = $x ?: $y; $x ?:= $y;
- RFC: «var» Deprecation — Предлагается сделать устаревшим ключевое слово
var
. Интересно, что это ключевое слово уже было устаревшим в версиях 5.0.0 — 5.1.2, а на данный момент всего лишь синонимpublic
. - RFC: Catching Multiple Exception Types — На рассмотрение предлагается возможность отлавливать несколько типов исключений в одном catch блоке:
try { // Some code... } catch (ExceptionType1 | ExceptionType2 $e) { // Code to handle the exception } catch (Exception $e) { // ... }
- RFC: Traits with interfaces — Предлагается сделать возможным использование интерфейсов в трейтах:
interface I { function foo(); } trait T implements I { function foo() { } }
Инструменты
- thephpleague/route 2.0 — Популярный роутер на основе FastRoute. Теперь с поддержкой PSR-7.
- thephpleague/glide — Библиотека для работы с изображениями. Туториал по использованию.
- PHPixie/Image — Независимый компонент из фреймворка PHPixie для работы с изображениями.
- kamranahmedse/smasher — Библиотека позволяет получить json-представление структуры каталогов, или воссоздать структуру по json-представлению.
- gabordemooij/redbean — Интересная ORM, которая умеет создавать или менять схему БД на лету.
- IcecaveStudios/archer — Библиотека для стандартизации подходов к тестированию, непрерывному интегрированию и документированию PHP-проектов.
- domnikl/statsd-php — PHP-клиент для передачи статистики в statsd.
- paragonie/constant_time_encoding — Кодирование с константным временем для защиты от атак по времени.
- daylerees/scientist — Библиотека для проведения экспериментов в коде. Пост о безболезненном рефакторинге в поддержку.
- erusev/base — Простой query builder для работы с БД.
- Tolerance/Tolerance — Библиотека для реализации отказоустойчивости + хелперы для микросервисов.
- jakubkulhan/bunny — Простая и быстрая реализация клиента AMQP (RabbitMQ) с синхронным и асинхронным (ReactPHP) режимами.
- wsdl2phpgenerator/wsdl2phpgenerator — Генерирует PHP-классы из WSDL-документа.
- Php Inspections (EA Extended) 1.4.0 — Расширение для PhpStorm, дополняющее возможности статического анализа кода.
Материалы для обучения
-
Symfony
- Подборка материалов по Symfony
- KonstantinKuklin/AsseticStaticGzipBundle — Умное сжатие статики. Прислал KonstantinKuklin.
- Руководство по Symfony — Bundle
- Руководство по Symfony — Console
- Как подружить JMS Serializer и LiipImagineBundle
- Symfony как использовать FOSRestBundle
- SonataAdminBundle: создание объекта из List View (часть 1)
-
Yii
- Yii 2.0 Cookbook: RBAC — Пример управления доступом на основе ролей в Yii 2.0.
- Запустили beta.yiiframework.ru
-
Laravel / Lumen
- Attendize/Attendize — Open source платформа на Laravel для управления мероприятиями и продажи билетов на них.
- Аутентификация с помощью JSON Web Token для Lumen
- Создаем читалку Hacker News с помощью Lumen
- Подборка материалов по Lumen
- Паттерн «репозиторий» в Laravel 5
- Создание беспарольной системы аутентификации на Laravel
- Что нового ждет нас в Laravel 5.2.23
- Реализация нового оператора range в PHP, 2 — Отличный пост о внутренностях PHP, подробно описывающий шаги по добавлению нового оператора в интерпретатор.
- Командная шина и Action-Domain-Responder
- Оптимизация производительности LAMP стека
- Принципы программирования — Часть 2: Избавляемся от NULL — Прислал haruatari.
- Как Облако@mail.ru спасло все* мои файлы и что из этого вышло
- Продолжаем ускорять блог на WordPress — PHP7, ESI в Varnish, XtraDB, эффективное сжатие и отключение лишнего
- Долгая история про локализацию даты без года в PHP
- Дайджест интересных материалов из мира Drupal #18
- Как устроено сплит-тестирование в Badoo
Аудио и видеоматериалы
- PHP Roundtable: 041: The PHP-FIG: Past, Present & Future
- Пятиминутка PHP Выпуск №18 — Что такое RFC в мире PHP?
- SDCast #40: в гостях Анатоль Бельский, core-developer, релиз-менеджер PHP 7
Занимательное
Спасибо за внимание!
Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку.
Вопросы и предложения пишите на почту или в твиттер.
Присылайте ссылки на интересные статьи или полезные инструменты, которых не было в PHP-Дайджестах, и ваше имя будет рядом с присланной ссылкой в выпуске.
Прислать ссылку
Быстрый поиск по всем дайджестам
← Предыдущий выпуск: PHP-Дайджест № 80
Автор: Zfort Group