Дайджест интересных новостей PHP (9 марта — 23 марта 2014)
Предлагаем вашему вниманию очередную подборку со ссылками на новости и материалы. Приятного чтения!
Новости и релизы
- Facebook официально представил язык программирования Hack — Хотя сам язык был доступен в HHVM уже достаточно давно, и даже публиковались туториалы, официальный анонс был сделан лишь на прошедшей неделе. Hack представляет собой язык программирования, расширяющий возможности PHP, добавляя в него такие возможности какстатическая типизация, лямбда-выражения, обобщения (generics), асинхронность и другие. Что самое важное, Hack прозрачно взаимодействует с PHP – можно реализовать приложения на традиционном PHP, а необходимые участки оптимизировать с помощью возможностей Hack. Или даже воспользоваться автоматическим конвертером.
C базовыми возможностями Hack можно ознакомиться в интерактивном туториале. Код сайта самого языка написан на Hack и доступен на GitHub. - PhpSpec 2.0 — Обновился SpecBDD-фреймворк для PHP. Если вы не знакомы с этим инструментом, рекомендую посмотреть скринкаст.
- PHP-CPP 0.9 — Множество обновлений C++ библиотеки, специально предназначенной для разработки PHP-расширений. Также на сайте теперь доступна документация.
- pthreads v2.0.0 — Обновилось отличное расширение для реализации многопоточности на PHP. Список изменений тут.
- Zend Framework 2.3.0 — Вышла в свет новая версия одного из самых популярных PHP-фреймворков. Первый за 10 месяцев релиз с новыми возможностями, которых, кстати, немало.
- Zend Framework 2 Certification — Также отныне стала доступна сертификация от Zend по ZF 2.
- Phalcon 1.3.0 — Свежий релиз PHP-фреймворка, реализованного в виде расширения. Кстати, недавно фреймворкуисполнилось уже два года.
PHP
- RFC: Return Type-hinting — Предлагается реализовать type-hinting для возвращаемых значений.
Инструменты
- PHPWord — PHP-библиотека для чтения и записи документов различных форматов: .docx, .odt, .rtf и других. Часть проекта PHPOffice.
- CSS-Crush — CSS-препроцессор реализованный на PHP.
- Magallanes — Еще один PHP-инструмент для развертывания приложений.
- Jumper — Позволяет выполнять PHP-замыкание на удаленной машине по ssh.
- Unirest PHP — HTTP-клиент на PHP. Хорошая альтернатива Guzzle.
- ProxyManager — Библиотека для создания всевозможных прокси-объектов.
- Testify.php — Микрофреймворк для модульного тестирования.
- Baobab — Библиотека, реализующая хранение и доступ к иерархическим данным с помощью вложенных множеств (nested set).
- Phang — Скелет приложения на Silex и AngularJS.
Материалы для обучения
- О будущем PHP — Отличный пост от Энтони Феррара, в котором он рассматривает последние тенденции PHP-мира: PHP 6, HHVM и Hack.
- Методы для примитивных типов в PHP — Как всегда, не менее отличный пост от Никиты Попова. Написан в ответ на размышления Энтони. Рассмотрена проблема реализации примитивных типов как объектов. Свою идею автор уже давно реализовал в виде расширения, благодаря которому можно просто регистрировать пользовательский класс как обработчик определенного скалярного типа.
- Динамическое изменение форм в Symfony2 — Об изменении форм на лету.
- Сравнение приватных членов классов в PHP — Пост в напоминание о том, что модификаторы доступа в PHP действуют на уровне классов, а не объектов.
- Обзор компонентов Symfony2: Translation, Templating — Ранее также были: Validator, Routing, Config, EventDispatcher,HttpKernel.
- Парсим бинарные данные на PHP на пример формата PCAP
- Исследуем трейты — Еще один пост о трейтах в копилку.
- Используйте поиск по хэшу, а не обход массива — Сделайте значения массива ключами и получите выигрыш в производительности. О том, как могут помочь простые знания алгоритмов и структур данных. Также подоспел перевод статьи .
- PHP 5.6 и splat-оператор
- Расплата производительностью за раннюю поддержку MySQL Fabric в PHP — В прошлом выпуске упоминалась возможность использования шардирования с помощью MySQL Fabric на PHP. В посте описываются возможные проблемы с производительностью.
- Почему я не рекомендую scrypt — Энтони Феррара пишет о том, что не следует использовать функцию scrypt для хэширования паролей.
- О рисках при релизации хэширования паролей — В продолжение темы пост о проблемах хэширования.
- Мысли о подписи пакетов — Одним из путей решения проблем безопасности PHP-пакетов, автор видит их подписывание.
- Использование composer без добавления vendor/ в .gitignore
- PHPUnit 4.0: Test Proxies, покрытие кода — Немного об улучшениях последнего релиза.
- Laravel: сессии, аутентификация, кэширование
- ORM и бесполезные модели — Интересный пост, в котором автор реализовывает одну и ту же бизнес-логику в терминах Active Record и Data Mapper.
- Создаем приложение для проведения конкурса с твитами по хэштегу — Простенькое приложение с подсчетом числа твитов.
- Приемочное тестирование с помощью Codeception: Использование нескольких баз данных
- Building a Better PHP with HHVM and Hack
- Пишем PHP-расширение на Zephir
- Delegator Factories in Zend Framework 2 — Автор поста является также автором непосредственно Delegator service factories, добавленных в ZF 2.2. В посте подробно рассмотрена концепция.
- Консольное приложение на Symfony и Pimple — туториал по созданию простого «hello world» приложения.
- Symfony CMF. Часть 2 и последняя
- Сравнение производительности перебора массивов в цикле через for() и foreach()
- Уже можно использовать две новые библиотеки из будущей PHPixie 3
- Шаблоны проектирования PHP. Часть 1. Порождающие
- Продвинутые методы неявного вызова php кода, использующиеся во вредоносных скриптах
- JPHP — Новый движок php для Java VM + JIT — Пополнение в рядах альтернативных реализаций PHP. Полноценный компилятор PHP в JVM-байткод. Браво!
Материалы c прошедших конференций
- MidwestPHP 2014 — Слайды 25 докладов.
- PHP North East Conference 2014 — Слайды 14 докладов.
- Hexagonal Symfony — Интересные слайды об архитектуре фреймворка и приложений.
- PHP UK Conference 2014 — Видеозаписи докладов с прошедшей в Лондоне конференции.
- London Behat Users Group — Behat 3.0 — Интересный доклад от создателя Behat everzet.
Аудио и видеоматериалы
- Рефакторинг легаси-кода с помощью PhpStorm — Запись вебинара.
- PHP Town Hall Эпизод 21 — В гостях у Фила Erika Heidi и Rafael Dohms. Беседуют в основном на тему Vagrant.
Автор: Роман Понский