PHP-Дайджест № 127 (1 – 25 марта 2018)

2724b867fc5d454eb0324032aa2dcdc6.jpg


Свежая подборка со ссылками на новости и материалы. В выпуске: Zend Expressive 3 и другие релизы, пара улучшений в PHP 7.3, порция полезных инструментов, и многое другое.
Приятного чтения!



f574e9991c42407b8fa789a66b854f8d.png Новости и релизы


  • PHP 7.2.3
  • PHP 7.1.15
  • PHP 7.0.28
  • PHP 5.6.34
  • Zend Expressive 3 — PHP 7.1+, тайп-хинты, поддержка PSR-15, множество новых компонентов и другие улучшения.
  • Codeception 2.4
  • nikic/PHP-Parser 4.0.0 — Обновление парсера PHP на PHP. Много улучшение, в том числе добавлена возможность сохранять форматирование кусков кода которые не были изменены, что позволяет использовать парсер для автоматического рефакторинга.
  • Доля WordPress среди крупнейших сайтов достигла 30%
  • habrПриглашаем на Badoo PHP Meetup 7 апреля
  • habrTutu PHP Meetup #1


c9ee7880391644e4aef6cc28ca681ab0.png 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
    }
    

cf862d9072784d04b621238ec137f2ca.png Инструменты


  • 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 — Библиотека для легкого распараллеливания работы.

329bec7c1e914963a1c5d2f2bfe99995.png Материалы для обучения


  • 96b65e92179a40f2bd1884549973ddd5.png Symfony
    • Неделя Symfony #585 (12–18 марта 2018)
    • Неделя Symfony #586 (19–25 марта 2018)
    • ruТестируем маршрутизатор Symfony 4.1

  • 569de4298b764a33894aa517e74324f9.png Yii
    • Новый официальный сайт Yii
    • habrРелиз Yii 2.0.15 и расширений баз данных с исправленными уязвимостями
    • Yii development notes #21
    • Yii 2.1 Early Access

  • 314bd0f0dfc54e3fa7f0c0daef1a2d25.png Laravel
    • habrLarrockCMS — новая CMS на основе Laravel
    • habrА как вы работаете с Laravel?
    • spatie/laravel-medialibrary 7.0–7.1.2 — Обновление популярной библиотеки для привязки файлов к моделям.
    • Laravel снова в поисках разработчика на багфикс для фреймворка и компонентов, и работу над новыми фичами.
    • Мутаторы и аксессоры в Eloquent ORM
    • Вопросы и ответы для собеседования по Laravel

  • 8bead8b690f148298fc7c479f1449eda.png 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
    • Drupal 8.5.0
    • Drupal 8: хуки, события, подписчики
    • habrDrupal 8 + Varnish: Кешируем HTML правильно

  • Как Automattic (WordPress.com & co.) частично перешел на atoum вместо PHPUnit
  • Domain-Driven Design — Repository
  • Чатбот для Facebook с помощью BotMan
  • videoВидео докладов с phpCE 2017
  • habrИсчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018)
  • habrОшибочное понимание принципа DRY
  • habrФункциональное программирование с PHP-генераторами
  • habrОпыт перехода проекта на phalcon с php 5.6 на 7.1


Спасибо за внимание!

Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку.
Вопросы и предложения пишите на почту или в твиттер.

Прислать ссылку
Поиск ссылок по всем дайджестам
← Предыдущий выпуск: PHP-Дайджест № 126

© Habrahabr.ru