PHP-Дайджест № 140 (17 – 30 сентября 2018)
Новости и релизы
- PHP 7.3 RC2 — Второй релиз-кандидат доставлен по расписанию. Следующий выпуск ожидается 11 октября. Еще один обзор нововведений PHP 7.3.
- PhpStorm 2018.3 EAP — Продолжается программа раннего доступа, в рамках которой можно использовать PhpStorm бесплатно. В свежих сборках добавлена поддержка
нотации для коллекций из PSR-5 PHPDoc, а также пересечений типов Foo&Bar. Подробнее о пересечении и объединении типов от автора PHPStan. - Codeception 2.5 — В апдейте представлены возможности для снэпшот-тестирования, поддержка подключения к нескольким БД и другие улучшения.
- doctrine/mongodb-odm 2.0 Alpha 1
- nikic/FastRoute — разыскивает мейнтейнера! Несколько лет назад Никита Попов доказал, что роутинг может быть очень быстрым на PHP. Напомню про его отличную статью Fast request routing using regular expressions.
- Yandex PHP meetup, 18 октября 2018, Москва — В московском офисе Яндекса пройдёт встреча PHP-разработчиков.
PHP Internals
-
[RFC] Typed Properties 2.0 — Предложение по типизированным свойства принято практически единогласно: 70 против 1! Типизированные свойства будут добавлены в PHP 7.4.
-
[PR] An attempt to implement «preloading» ability — Дмитрий Стогов главный автор проекта PHPNG, который стал базой для PHP 7. На этот раз Дмитрий представил концепт, который позволяет приложениям предварительно загружать код еще до того как PHP обработает HTTP-запрос. Также Дмитрий работает над реализацией JIT в PHP, которая ожидается в PHP 8.
Инструменты
- spiral/roadrunner — Высокопроизводительный сервер приложений, балансировщик нагрузки и менеджер процессов для PHP реализованный на Go. Добавлена поддержка HTTPS и HTTP/2 Push.
- ankitpokhrel/tus-php — Реализация сервера и клиента tus.io открытого протокола возобновляемых загрузок файлов. Протокол используется в Vimeo, Cloudflare, и Git LFS.
- TiBeN/CrontabManager — Менеджер cron-задач.
- paragonie/easydb — Простая и удобная обертка над PDO. Доступно кэширование подготовленных запросов paragonie/easydb-cache.
- zendframework/zend-diactoros 2.0.0 — Обновление популярной реализации PSR-7 и теперь еще PSR-17.
- liuggio/fastest — Простое решение для параллельного запуска тестов. Альтернатива более сложному paratestphp/paratest
- konsulting/porter — Мультисайт окружение для локальной разработки на базе Docker.
Материалы для обучения
Symfony
- KnpUniversity переименован в SymfonyCasts
- enumag/no-thanks — Убирает напоминание о symfony/thanks в symfony/flex :-)
- Неделя Symfony #612 (17-23 сентября 2018), #613 (24-30 сентября 2018)
Laravel
- Laravel Zero 5.7
- Что такое APP_KEY и для чего он нужен
- Пошаговое руководство по созданию первого приложения на Laravel
- Building LaraShoppe — Скринкаст по созданию магазина с нуля с помощью Laravel, Laravel Nova, Vue.js, и Tailwind CSS.
- antonioribeiro/health — Мониторинг Laravel приложений с уведомлениями.
- spatie/laravel-blade-x — Позволяет использовать кастомные HTML-компоненты в Blade-шаблонах вместо использования директивы @include.
- railken/lara-eye — Конвертирует строку запроса в набор вложенных конструкций where для QueryBuilder.
Async PHP
- ReactPHP Tutorial #12: Routing
- friends-of-reactphp/mysql 0.4 — Асинхронный клиент для MySQL. В обновлении представлен интерфейс на промисах вместо колбэков и стриминг больших результатов. Позволяет эффективно обрабатывать тысячи и миллинов записей из MySQL с помощью ReactPHP. Подробнее в посте автора.
CMS
-
Paragon Initiative: Slice Of PIE #00 — Почему гибридное шифрование лучше чем асимметричное? Какие алгоритмы шифрования стоит исопльзовать PHP разработчикам?
-
Нужно поднимать Kubernetes кластер, но я всего лишь программист кода. Выход есть
Аудио и видеоматериалы
- Пишем PSR-7 фреймворк: Консольные команды, базы данных и ресурсы
- Пятиминутка PHP Выпуск №39 — Как протестировать проект под PHP 7.3?
- Пятиминутка PHP Выпуск №38 — DevOops и эволюция DevOps в 2018 году
- PHP Roundtable #78: DocBlocks, Annotations, PSR-5
Занимательное
- Список самых желаемых фич для PHP 8 из опроса в твиттере — На первом месте оказались дженерики (RFC), а затем короткие лямбды (RFC), многопоточность (pthreads), скалярные объекты (nikic/scalar_objects), перегрузка методов, асинхронные возможности (PHP 8), и прочее.
- RemotePHP.io — Борда с вакансиями на удаленную работу.
svbl @svblxyz Don't 👏 put 👏 your 👏 .env 👏 files 👏 in 👏 the 👏 web-server 👏directory https://www.google.com/search?q=db_password+filetype%3Aenv …
Спасибо за внимание!
Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку. Вопросы и предложения пишите на почту или в твиттер.