Дайджест интересных новостей и материалов из мира PHP за последние две недели (25.08.2013 — 08.09.2013)
Новости и релизы
- PSR-5 PHPDoc и PSR-6 Caching Interface — Всего две недели назад статус черновика получил PSR-4, а на подходе еще два новых стандарта: PSR-5 — о документировании кода и PSR-6 — интерфейс кэширования.
- Вышла в свет Doctrine 2.4 — Обновилась популярнейшая ORM-библиотека. Кстати отныне не будет доступна из PEAR, только Composer.
- Zend Announces 10,000th Zend Certified Engineer — Компания Zend анонсировала 10000 разработчика прошедшего PHP-сертификацию. Небольшое интервью с тем самым десятитысячным можно прочитать тут.
PHP
- RFC: Автозагрузка функций — В продолжение к опубликованному недавно предложению об импорте функций и констант из пространств имен, было выдвинуто новое предложение: реализовать автоматическую загрузку функций и констант с помощью регистрации соответствующего callback в autoload_register. Предложение было воспринято core-командой весьма неоднозначно, о чем свидетельствуют споры в php-internals. Автор предложения, известный деятель PHP-сообщества Anthony Ferrara, был возмущен отсутствием конструктивной критики и заявил о том, что покидает php-internals. Подробнее о причинах принятия такого решения, а также о проблемах в core-команде PHP он написал в своем посте.
- RFC: Синтаксис функций с переменным числом аргументов — Отличное предложение от Никиты Попова, значительно упрощающее использование функций с переменным числом аргументов. Там, где раньше требовалось использовать
func_get_args()
, теперь можно просто объявлятьfunction fn($arg, ...$args)
.
Хороший обзор предложения, а также примеры можно найти в этом посте. - RFC: Распаковка списков аргументов — Предложение, дополняющее предыдущее, и которое состоит в том, чтобы реализовать в PHP функционал уже имеющийся например в Python и Ruby. Кроме удобства, реализация нового синтаксиса еще и значительно производительнее.
- RFC: Именованные аргументы — И еще одно отличнейшее предложение от Никиты Попова. Если данные изменения будут внесены в ядро, то наконец-то станет возможным передавать аргументы в функцию в произвольном порядке и пропускать необязательные параметры. И хотя подобное предложение выдвигалось и раньше, пока это все-таки в буквальном смысле RFC — запрос на отзывы. Обсуждения о необходимости этого функционала продолжаются.
Немного мыслей и примеров в этом посте. - RFC: Пропуск необязательных параметров — В данном же предложении предполагается использование ключевого слова
default
в списке аргументов:fn(1, default, 3);
Инструменты
- PHP FFmpeg — Отличная обертка над ffmpeg для PHP.
- Alice — Генератор фикстур, позволяющий описывать данные для тестирования в простом для чтения и редактирования виде.
- Geocoder — Библиотека, которая будет полезна при создании приложений, обрабатывающих гео-данные.
- Rx.PHP — Набор библиотек для создания асинхронных и основанных на событиях PHP-приложений.
- Explain Shell — Отличный инструмент, который наглядно показывает информацию о консольной команде и ее параметрах. Например tar xzvf archive.tar.gz.
Материалы для обучения
- Введение в язык Zephir — Не так давно команда Phalcon объявила о создании нового языка Zephir — смеси PHP и С. По ссылке пост, в котором описано как установить Zephir и разобран пример создания небольшого менеджера событий.
- Структуры данных, PHP. Часть вторая — Продолжение перевода серии статей о структурах данных и их использовании в PHP. Рассмотрены куча и графы.
- Почему Symfony? 7 фактов — Пост, составленный из небольшого интервью с Fabien Potencier и дополненный мнением автора.
- Создаем QR-коды с помощью PHP и Silex — Небольшая заметка об использовании библиотеки endroid/qrcode в связке с микрофреймворком Silex.
- Взгляд на развитие PHP — К главным причинам популярности PHP кроме простоты автор также относит и то, что на протяжении 18 лет существования язык постоянно развивается.
- Кое-что о новом дизайне PHP.net — Пост о том, как шла работа над дизайном php.net последний годы и о планах на будущее. Автор планирует внедрить новый инструмент для использования разметки на основе Markdown вместо текущего на основе DocBook, чтобы увеличить число сторонних контрибьюторов.
- Интегрируем SonarQube с Jenkins и PHP-проектом — Туториал по настройке SonarQube для анализа анализа качества и сбора статистики по коду PHP-проекта.
- MVC не достаточно — Небольшая заметка, в которой автор пишет о том, что MVC должен быть частью вашего приложения, а не вашим приложением.
- Следим за голосованием на «Россия 10» — Автор написал небольшой скрипт для мониторинга статистики, которым и делится.
- Наследование конфигураций приложения на Zend Framework 2 — В посте продемонстрирован подход описания конфигураций приложения для различных окружений, который позволяет избежать дублирования и указывать только различающиеся параметры.
- CurlFile и Facebook SDK в PHP 5.5 — В PHP 5.5 был добавлен CurlFile, маленькое дополнение к расширению Curl, которое позволяет указать в качестве параметра файл для отправки в запросе. Пост о мини-баге в Facebook SDK не позволявшим использовать эту возможность.
- Интегрируем Codeship с Fortrabbit — Инструкция по интеграции CI-инструмента Codeship в популярном PaaS-хостинге для PHP-проектов.
- Авторы библиотек, не создавайте уязвимые интерфейсы — Ряд рекомендаций для авторов библиотек о том, как сделать их инструменты безопаснее. Рекомендации касаются SQL-инъекций.
- Xdebug — профессиональная отладка PHP — Туториал по использованию Xdebug в качестве отладчика и примером интеграции с PHPStorm.
- Создаем веб-приложение с нуля на CodeIgniter — Серия туториалов о создании приложения с бэкендом на CodeIgniter и Backbone на фронте, а также MongoDB в качестве хранилища данных. В первой части базовая настройка.
- Обрабатываем входящую почту с помощью SendGrid — Небольшой туториал по использованию сервиса SendGrid.
- Автоматическая генерация кода в Yii — Обзор пары расширений для Yii, позволяющих значительно сократить время на выполнение рутинных операций.
- Новые возможности PHP 5.5 — Еще один пост с обзором возможностей последней версии PHP. Надо больше обзоров: 1,2, 3, 4, 5.
- Место преступления: PHP — Блог, который пополняется перлами PHP-разработчиков. Забавно, но думаю многие из нас встречаются с «перлами» похлеще ежедневно.
- Непрерывная интеграция для PHP с помощью Jenkins — Туториал по настройке jenkins-сервера для работы с PHP-проектами.
- Туториалы по Laravel 4 — Более десятка туториалов по Laravel 4.
- Реализация логгирующего аспекта с помощью аннотаций Doctrine — Продолжение статьи о логгировании с использованием аспектов и Go! AOP.
- Папка vendor в Composer — Один из часто задаваемых вопросов по Composer: как установить пакет в директорию отличную от
vendor
. В посте автор пишет, почему это плохая идея. - Пример разработки блога на Zend Framework 2, 2, 3 — Серия статей для новичков. В четвертой части автор обещает обновить приложение с учетом рекомендаций из комментариев.
- Сентябрьский выпуск журнала Web & PHP — В свежем выпуске журнала несколько интересных статей на тему PHP и веб-разработки, например, обзор решений для создания веб-приложений реального времени на PHP.
- Laravel 4 ACL — В предыдущем туториале речь шла об аутентификации в Laravel 4. На этот раз подробный туториал об Access Control List.
- Насколько тяжел Silex? — Silex часто характеризуют как самый большой микрофреймворк. Автор пишет, что не смотря на то, что Silex несколько больше других микрофреймворков, он, тем не менее, легковесен и содержит минимум необходимых зависимостей.
- Personal Maps, 2, 3, 4 — Серия статей, в которых описан весь цикл создания полноценного веб-приложения с нуля. Используются Yii Framework и Angular JS.
Материалы c прошедших конференций
- CakeFest 2013 — Слайды 17 докладов с прошедшей в Сан-Франциско конференции, посвященной фреймворку CakePHP.
- Практический рефакторинг — В дайджестах упоминалась виртуальная группа пользователей PHP — NomadPHP, в рамках деятельности которой ежемесячно проводятся вебинары. По ссылке слайды августовского доклада.
- PHP@FrOSCon 2013 — На прошедшей в Германии конференции FrOSCon 2013 отдельным потоком был представлен PHP. По ссылке слайды 6 докладов.
- Laracon EU — Слайды 2х докладов с прошедшей в Амстердаме конференции. Туда же слайды доклада Введение в Laravel 4.
- PHP: The Undiscovered Country — Видеозаписи докладов с прошедшей в Сан-Франциско конференции.
← Предыдущий выпуск Следующий выпуск→
Источник: http://habrahabr.ru/
Автор: Роман Понский