Дайджест интересных новостей и материалов из мира PHP (10—24 ноября 2013)
Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.
Новости и релизы
Обновления PHP 5.5.6 и 5.4.22 — Корректирующие релизы актуальных веток. Кроме исправлений в 5.5.6 была оптимизирована производительность работы функций array_merge() и func_get_args(), в которых устранено лишнее копирование данных, а в OPCache до миллиона повышен лимит на число файлов в кэше (opcache.max_accelerated_files).
- Codeception 1.8 — Свежая версия замечательного инструмента для тестирования. На этот раз добавлена поддержка Phalcon, DataProviders, возможность указывать зависимости тестов с помощью ключевого слова
@depends
и другое. - PHP Console 3.0 — важнейшее обновление за 3 года — Обновилось полезное расширение для Chrome, упрощающее отладку PHP-приложений.\
PHP
RFC: phpdbg — В ядро предлагается включить легковесный отладчик — phpdbg.
Инструменты
- styleCow — Парсер CSS на PHP.
- Payum — Отличная библиотека, значительно упрощающая интеграцию с различными сервисами оплат: Paypal, payex, authorize.net, be2bill, omnipay и другими.
- clue/graph — Математическая библиотека для работы с графами/сетями на PHP. Включает реализацию большинства общих алгоритмов.
- Plates — Нативный шаблонизатор для PHP.
- pho — Новый BDD-фреймворк для PHP, автор которого вдохновлялся Jasmine.
- PHP Super Closure — Библиотека, позволяющая сериализовать замыкания в PHP.
- Minime \ Annotations — Простая работа с аннотациями на PHP.
- Finite — Конечный автомат на PHP.
- FontAwesomePHP — Библиотека-оболочка для удобного использования легендарного шрифта FontAwesome.
- php-ar-drone — Библиотека позволяющая управлять летательным дроном на PHP. Реализована с использованием ReactPHP. Доступна видеодемонстрация — PHP может летать!
Материалы для обучения
- Текучий интерфейс — это зло — О том, когда использование текучих интерфейсов оправдано, и почему это плохо в других случаях.
- За пределами объектно-ориентированного программирования — Еще один замечательный пост от Anthony Ferrara в продолжение серии «за пределами». Рекомендуется к прочтению.
- Бред собачий: NodeJS против PHP — Пост был написан в ответ на бредовое сравнение производительности PHP и NodeJS (исправлено позже). Правильный тест, проведенный автором, естественно расставил все точки над i.
- Отслеживание изменений в PHP-проекте — Ребята из QaFoo создали инструмент changetrack, который позволяет анализировать историю изменений PHP-проекта. Это дает возможность, например, выявить участки, которые изменяются чаще других по причине исправлений ошибок.
- Жонглируйте бензопилами, а не типами — О типизации и сравнении типов в PHP.
- Работаем с PHPUnit и Selenium Webdriver — Основы приемочного тестирования с использованием PHPUnit, Selenium и веб-драйвера от Facebook.
- Selenium WebDriver тесты на Codeception — В продолжение предыдущего поста, реализовываем те же тесты с использованием Codeception.
- Посты в стиле социальных сетей на PHP, MongoDB и jQuery, 2 — Пример создания небольшого приложения с использованием MongoDB в качестве хранилища данных.
- Взгляд на Aura v2 — Серия постов о компонентах готовящейся к выходу второй версии многообещающего фреймворка Aura.
- Как стать PHP-профессионалом — Несколько советов о том, как достичь успеха в веб-разработке.
- Используем потоки данных в PHP эффективно — Продолжение серии статей о потоках данных в PHP. В данном посте речь идет об использовании фильтров.
- Обработка данных в PHP используя STDIN и unix-конвейер — Еще один пост об использовании потоков данных в PHP, а также об использовании PHP-скриптов в консольных командах.
- Программирование для Arduino на PHP — Пример использования PHP для разработки приложений взаимодействующих с внешними устройствами. Автор пишет о применении ReactPHP и Ratchet. Доступна демонстрация .
- Ускоренный курс по производительности PHP-приложений, 2 — Пара хороших статей об общих принципах создания производительных приложений на PHP, а также масса советов, рекомендаций и готовых рецептов.
- Мигрируем на ZF2: интеграция Composer и DoctrineORMModule — Пример обновления приложения с ZF1 до ZF2.
- Как запустить веб-сервер из PHP-приложения — Автор поста реализовал небольшую библиотеку, которая позволяет запускать веб-сервер непосредственно из PHP-скрипта двумя способами: используя встроенный веб-сервер и используя React. Пост дополнен примером и тестами с использованием Apache ab.
- Устанавливаем Nginx + Php FPM + APC на CentOS 6.4 — Инструкция по поднятию веб-стека на CentOS.
- Готовый к битве Nginx — Небольшое руководство по оптимизации конфигураций nginx.
- PHP Beyond the Web — Новая книга по PHP, раскрывающая не традиционные сферы применения языка: десктопные приложения, демоны и другие.
- Контроль доступа — Отличный пост о базовых принципах контроля доступа в PHP-приложениях.
- Битва автозагрузчиков: PSR-0 против PSR-4 — Обзор двух стандартов. Как и почему PSR-4 дополняет PSR-0.
- Изучаем разработку на PHP с помощью Silex — Автор пишет о том, почему считает Silex хорошим фреймворком с точки зрения обучения, а затем описывает базовые возможности и приводит пример создания небольшого приложения.
- Prismic.io для Laravel — Пример интеграции Laravel-приложения с интересным сервисом по управлению контентом —prismic.io.
- Аутентификация на Laravel 4 — Еще один туториал по Laravel 4, тема уже была подробно раскрыта тут.
- Laravel 4: Multisites — Продолжение серии исчерпывающих туториалов по Laravel 4. Ранее уже было о пакетах,аутентификации, Access Control List, развертывании, API и Real Time Chat.
- Laravel 4: советы и ресурсы
- LaravelSnippets — Репозиторий сниппетов для Laravel.
- Что нового ожидается в Laravel 4.1 — Обзор предстоящих нововведений.
- Symfony2: глобальная опция для консольных команд по созданию PID-файла — Вдохновившись прочитанным в Signaling PHP, автор расширяет Symfony2 добавив возможность автоматического создания PID-файлов для команд.
- Новое в Symfony 2.4: компонент ExpressionLanguage — Обзор нового компонента из грядущего релиза Symfony 2. О других ожидающихся нововведениях можно прочитать в официальном блоге.
- KnpMenuBundle + Sonata. Делаем меню из базы — KNPMenuBundle + SonataAdminBundle: управляем меню из админки.
- HTML Purifier. Расширяем возможности — В посте рассмотрена замена внешних ссылок на свои, а также добавление ко всем пользовательским ссылкам атрибута target=_blank.
- Функция «ковра» — Генерируем картинку с узором ковра на PHP, действительно забавный результат.
- Диспетчер событий с фильтрацией по шаблону — Автор реализовал интересное расширение обычного диспетчера событий — eventable.
- PubSub в браузере с помощью вебсокетов и протокола WAMP — Пример использования протокала WAMP на PHP с помощью Ratchet.
- Continuous Delivery hecho en Alawar — Автор делится опытом построения процессов на PHP-проекте.
- Mooha — нодовый интерфейс для PHP — Отличнейшая идея! Создаем PHP-приложения визуально. Без лишних слов, ждем беты, чтобы пощупать.
Аудио и видео материалы
- Что произошло при атаке на php.net? — Эпизод подкаста «Lately in PHP», в котором обсуждается тема зловредного кода на php.net, а также другие новости из мира PHP.
- PhalconPHP Framework — это босс — Обзор возможностей и использования фреймворка Phalcon.
- Приступаем к использованию Google Cloud SQL — Скринкаст о Google Cloud SQL, ближе к концу которого приведены примеры использования в PHP, а также подключение phpMyAdmin.
- Видеовыпуск подкаста PHP Town Hall: Episode #15 — В гостях один из разработчиков Joomla. Обсуждается состояние проекта: над чем идет работа и в каком направлении развивается Joomla. Также обсуждается PSR-4.
Занимательное
- Создатель PHP Расмус Лердорф — об анархии и демократии в разработке языка, PHP 5.6 и жалующихся программистах — Интересные цитаты из интервью с Расмусом а также запись выступления с IDCEE 2103 в Киеве.
- Инфографика: Эффект PHP на мир энтерпрайз
- PHP :: Doc Bug #66144 :: php.net is too white — В конце июня на php.net была запущена бета версия нового дизайна, асовсем недавно сайт был полностью переведен на обновленную версию.
Тем временем в баг-трекере был открыт тикет, в котором пользователь жаловался на то, что сайт слишком белый и просил сделать темную версию. Но ребята из команды PHP не растерялись и ответили, что поскольку им надо как-то зарабатывать, то скоро будут выпущены специальные брэндированные солнцезащитные очки, которые нужно одевать при просмотре php.net.
Собственно, вот и они!
Автор: Роман Понский