Дайджест PHP #14
Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.3 RC 1, PhpStorm 2018.3 EAP, Laravel 5.7 и другие релизы, HHVM прекращает поддержку PHP, типизированные свойства в PHP, порция полезных инструментов, видеозаписи докладов, и многое другое.
Приятного чтения!
Новости и релизы
- PHP 7.3 RC 1 — Стартовал цикл релиз-кандидатов ветки 7.3. Ожидается всего не менее 6 выпусков для стабилизации.
- PHP 7.2.10
- PHP 7.1.22
- PHP 7.0.32
- PHP 5.6.38
- HHVM перестанет поддерживать PHP — Релиз HHVM v3.30, которой запланирован на декабрь, станет последней версией с поддержкой PHP. Проекты рекомендуется переводить либо полностью на Hack, либо на PHP 7. Новость ожидаемая, об этом предупреждали еще год назад, ну а популярные фреймворки и проекты отказались от поддержки HHVM и того раньше. Спасибо команде HHVM за то, что подтолкнули PHP к развитию, желаем удачи!
- Принят PSR-17 HTTP Factories, спецификация PSR-18 HTTP Client в ревью, опубликован и активно обсуждается черновик PSR-14 Event Dispatcher.
- PhpStorm 2018.3 EAP — Стартовала программа раннего доступа PhpStorm, благодаря которой можно использовать новые версии IDE совершенно бесплатно. Из уже реализованных нововведений:
• Поддержка PHP-CS-Fixer позволяет не только подсвечивать, но и исправлять ошибки стандартов
• Быстрый поиск переменных во время отладки
• Ctrl+Dot автодополнение
• Переработанный диалог поиска классов/файлов
• Поддержка DQL
и другие улучшения.
Инструменты
- thecodingmachine/safe — В библиотеке реализованы обертки над стандартными функциями PHP, так чтобы они бросали исключения вместо возвращения
false
. Подробнее в посте. - rambler-digital-solutions/hydrogen — Более быстрый и удобный уровень абстракции для Doctrine ORM.
- theorchard/monolog-cascade — Расширение для Monolog позволяет сконфигурировать несколько обработчиков в одном файле.
- renatomefi/php-fpm-healthcheck — Shell скрипт для проверки статуса php-fpm. Может пригодиться при работе с Docker и Kubernetes.
- docteurklein/json-chunks — Потоковое кодирование JSON на лету с помощью генераторов. Альтернатива violet-php/streaming-json-encoder
- thecodingmachine/phpstan-strict-rules — Дополнительные правила для статического анализатора PHPStan.
Материалы для обучения
- symfony/panther — Представлен новый компонент Symfony для E2E тестирования на основе ChromeDriver. Аналог Laravel Dusk и AcceptenceTests в Codeception.
- 4 способа добавить глобальную опцию или аргумент в Symfony Console приложении
- Пишем одностраничное приложение на Symfony 4, Vue.js, Vue Router, Vuex
- Laravel 5.7 — Новая структура папки ресурсов, улучшенные сообщения об ошибках, добавлена интеграция с Symfony Dump Server, возможности для тестирования artisan-команд, и другие улучшения.
- saleem-hadad/larecipe — Красивая документация на markdown для Laravel-проектов.
- marvinlabs/laravel-luhn — Валидация номеров кредитных карт.
- recoilphp/react — Превращает промисы ReactPhp в корутины.
- reactphp/cache — Асинхронная библиотека для кэширования. О новых возможностях библиотеки в посте автора.
- WordBits.io — Интересный проект, на котором предлагается делиться сниппетами для WordPress с возможностью скачивать их как готовые плагины.
- Magento Tech Digest #30: Aug 27 – Sept 03, 2018
- Несколько кейсов когда доменная модель может быть переиспользована
- Почему следует объявлять классы окончательными (final) по умолчанию
- 5 советов по работе над опенсорс PHP проектами
- Загрузка больших файлов на PHP с возможностью остановки/возобновления — с помощью протокола tus.io и ankitpokhrel/tus-php
- Основы автоматизированного тестирования в РНР
Спасибо за внимание!