Свежая подборка со ссылками на новости и материалы. В выпуске: Zend Expressive 3 и другие релизы, пара улучшений в PHP 7.3, порция полезных инструментов, и многое другое.
Приятного чтения!
Новости и релизы
- PHP 7.2.3
- PHP 7.1.15
- PHP 7.0.28
- PHP 5.6.34
- Zend Expressive 3 — PHP 7.1+, тайп-хинты, поддержка PSR-15, множество новых компонентов и другие улучшения.
- Php Inspections (EA Extended) v3.0.0 — Мастхэв расширение для PhpStorm, существенно дополняющее возможности статического анализа кода. В новой версии пачка улучшений и дополнительных проверок.
- Codeception 2.4
- nikic/PHP-Parser 4.0.0 — Обновление парсера PHP на PHP. Много улучшение, в том числе добавлена возможность сохранять форматирование кусков кода которые не были изменены, что позволяет использовать парсер для автоматического рефакторинга.
- Доля WordPress среди крупнейших сайтов достигла 30%
- Приглашаем на Badoo PHP Meetup 7 апреля
- Tutu PHP Meetup #1
PHP
- В ветке PHP 7.3 реализовано значительное улучшение сборщика мусора
- [RFC] is_countable — В PHP 7.3 добавлена функция для проверки на перечислимость.
До:if (is_array($foo) || $foo instanceof Countable) { // $foo is countable }
После:if (is_countable($foo)) { // $foo is countable }
Инструменты
- implode.io — Отличный аналог JSFiddle только для PHP.
- avantarm/memcached-emulator — Эмулятор расширения Memcached, работает напрямую с сервером через сокеты. Заменяет оригинальный класс \Memcached и работает под Windows. Прислал @avantarm.
- Brunty/cigar — Утилита для быстрого «дымового» тестирования веб-приложений.
- hamburgscleanest/guzzle-advanced-throttle — Расширение для Guzzle, которое позволяет лимитировать запросы по различным правилам
- san-kumar/lambdaphp — Быстрый хостинг простых сайтов на AWS Lambda.
- eventsauce.io — Библиотека для реализации Event Sourcing в PHP-приложениях.
- reisraff/phulp — Порт Gulp на PHP.
- koriym/print_o — Визуализация графа объектов в виде мыслекарты.
- hoaproject/Kitab — Инструмент позволяет добавлять юнит-тесты прямо в докблок секции к функции, а-ля doctest в Python.
- wapmorgan/SystemDaemon — База для создания системных демонов.
- wapmorgan/Threadable — Библиотека для легкого распараллеливания работы.
Материалы для обучения
Symfony
- Неделя Symfony #585 (12-18 марта 2018)
- Неделя Symfony #586 (19-25 марта 2018)
- Тестируем маршрутизатор Symfony 4.1
Yii
- Новый официальный сайт Yii
- Релиз Yii 2.0.15 и расширений баз данных с исправленными уязвимостями
- Yii development notes #21
- Yii 2.1 Early Access
Laravel
- LarrockCMS — новая CMS на основе Laravel
- А как вы работаете с Laravel?
- spatie/laravel-medialibrary 7.0-7.1.2 — Обновление популярной библиотеки для привязки файлов к моделям.
- Laravel снова в поисках разработчика на багфикс для фреймворка и компонентов, и работу над новыми фичами.
- Мутаторы и аксессоры в Eloquent ORM
- Вопросы и ответы для собеседования по Laravel
Zend
- Неделя Zend Framework 2018-03-01
- Неделя Zend Framework 2018-03-16
- Хотите асинхронный Zend Expressive? Попробуйте связку с Swoole — wshafer/swoole-expressive
Async PHP
- clue/php-mq-react — Легковесная in-memory очередь сообщений на ReactPHP. Пост от автора в поддержку.
- friends-of-reactphp/mysql v0.3.0 — Асинхронный клиент MySQL.
- Работаем с файловой системой в ReactPHP
- Использование роутера с компонентом Http из ReactPHP
- Быстрый Web-парсинг с помощью ReactPHP: лимитирование запросов
CMS
- Как Automattic (WordPress.com & co.) частично перешел на atoum вместо PHPUnit
- Domain-Driven Design — Repository
- Чатбот для Facebook с помощью BotMan
- Видео докладов с phpCE 2017
- Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) — Оригинал.
- Ошибочное понимание принципа DRY
- Функциональное программирование с PHP-генераторами
- Опыт перехода проекта на phalcon с php 5.6 на 7.1
- code-basics.ru — Бесплатные практические уроки по программированию для тех, кто начинает с нуля.
Спасибо за внимание!
Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку.
Вопросы и предложения пишите на почту или в твиттер.
Прислать ссылку
Поиск ссылок по всем дайджестам
< Предыдущий выпуск: PHP-Дайджест № 126
Комментарии (10)
gro
26.03.2018 11:52is_countable, да давайте, вместо того, чтобы нормально переработать интерфейсы и совместить их с массивами, будем плодить ещё кучу глобальных функций.
is_array_access и is_traversable не хватает.anurbol
26.03.2018 13:28Да, было бы лучше если бы массивы по умолчанию были бы экземпляром Интерфейса Countable. Но это требует переработки всего движка PHP.
Finesse
Лучший JSFiddle для PHP, который я видел — 3v4l. В отличие от Implode.io он запускает код сразу во всех версиях PHP и показывает дополнительную информацию, например, время выполнения в разных версиях PHP.
sydorenko-vd
Я всегда использую onlinephpfunctions, он быстро работает, это критично, когда нужно небольшой участок кода быстро где-то запустить.
ellrion
Implode.io крут для пользователей Laravel фреймворка.