Дайджест интересных новостей и материалов из мира PHP № 46 (3 – 24 августа 2014)

сегодня в 20:54

af93d56c11ce407d91ea0e8dd41e5ffd.jpgПредлагаем вашему вниманию очередную подборку со ссылками на новости и материалы.

Приятного чтения!

2c2dc47b7392be6229301759f5b4011a.png Новости и релизы Последний релиз ветки PHP 5.3 — PHP 5.3.29 — Спустя 5 с небольшим лет после выпуска, поддержка ветки 5.3 официально завершена. Релиз 5.3.29 стал последним в истории и включил в себя ряд исправлений безопасности реализованных ранее в ветках 5.4 и 5.5. Дальнейших обновлений не планируется. Подробнее об истории ветки 5.3 написал ее релиз-менеджер Johannes Schlüter в своем посте. PHP 5.6.0RC4 — Четвертый и последний релиз-кандидат новой версии интерпретатора. Финальный релиз ожидается уже 28 августа. Обзор нововведений 5.6 тут и тут habr. PHP 5.5.16, 5.4.32 — Обновления актуальных веток. Кстати, следующий релиз ветки 5.4 станет последним релизом, который содержит не только исправления безопасности (подробнее в internals). Таким образом, вместе с релизом 5.6 продолжится практика двух актуальных веток и одной ветки с поддержкой безопасности. CodeIgniter обзавелся новым домом — Чуть больше года назад компания EllisLab, занимавшаяся разработкой CodeIgniter, объявила о том, что не в силах поддерживать фреймворк и ищет нового владельца. В твиттере EllisLab говорится, что новый хозяин найден, но подробная информация будет позже. Есть ли шансы у CodeIgniter с новой компанией по-настоящему вернуться в гонку? a1bab630889567e2a5c9bab3290d8310.png PHP RFC: Включить PHPNG в ветку master — Поскольку PHPNG уже достаточно стабилен, то было предложено включить ранее бывшую экспериментальной ветку PHPNG в master, и таким образом сделать новую реализацию основой PHP 7. Предложение практически единогласно принято и уже реализовано, а значит, если все пойдет по плану, то мир увидит PHP 7 через год или позже, в зависимости от количества прочих изменений. Go PHP 7! RFC: Closure: call — Предложение добавить новый метод call. Он позволит выполнить замыкание, передав первым параметром объект, который будет использован в качестве $this в теле замыкания. Аналог метода call в JavaScript. RFC: Add pecl_http to core — Как ясно из названия, предлагается интегрировать популярное PECL-расширение непосредственно в ядро. RFC: Switch default multiple — Первые результаты публикации спецификации языка PHP — предложение, в котором предлагается исправить некорректное поведение интерпретатора и запретить использование нескольких блоков default в конструкции switch. RFC: Abstract syntax tree — Голосование по реализации абстрактного синтаксического дерева заканчивается уже завтра и рискует стать первым абсолютно единодушным решением — ни одного голоса против. Другие предложения: RFC: Function Referencing as Closures, RFC: Binary String Comparison — предложение по приведению в порядок нестрогого сравнения числовых строк. ba61d0aa90be53f9f7f44faeabb67e78.gif Инструменты Phred — Расширение PHP, которое добавляет в язык ОО работу со строками, полную поддержку юникода, компоненты для интернационализации/локализации и много других полезных возможностей. patch-installer — Библиотека позволяет патчить другие пакеты после установки или обновления с помощью Composer. patchwork — Библиотека позволяет переопределять пользовательские функции в рантайме. Также, например, позволяет подменять статический и приватные методы тестовыми заглушками. Patchwork-Dumper — Продвинутый dump переменных. Gliph — Библиотека для работы с графами на PHP. Также для работы с графами есть библиотека Graph. TechDivision_ApplicationServer — Многопоточный сервер приложений на PHP. Negotiation — Библиотека для реализации content negotiation в PHP приложении. php-resque — Порт популярной Ruby-библиотеки Resque для работы с очередями задач на основе Redis. Туториал по использованию тут. php-webshells — Большая подборка веб-шеллов на PHP. Сonduit — Middleware на PHP, порт Sencha Connect для Node.js. Grav — Файловая CMS. Dice — Минималистичный Dependency Injection контейнер. Factory Muffin — Библиотека для быстрой генерации тестовых объектов. Аналог Factory Girl из Ruby. Elcodi — Набор e-commerce компонентов для Symfony 2. 30 самых часто используемых бандлов Symfony a93d4107f28f667a4c3336347ef78774.png Материалы для обучения Symfony Laravel Основы Python для PHP-разработчиков Сравнительный тест производительности Dependency Injection контейнеров — Протестированы PHP-DI, Zend/Di, Aura.Di. Symfony/DependencyInjection, Orno/Di и Dice. Тестирование кода, который что-либо выводит — Задача протестировать код выводом заголовков или контента. Для этого автор предлагает использовать трюк с неймспейсами. Как сгенерировать уникальную 64-битное целое число из строки — Пример реализации хэш-функции на основе md5 и GMP. Предотвращение dogpile-эеффекта — В посте идет речь о кэшировании и проблеме, когда срок валидности кэша истек и к приложению поступает сразу множество запросов, для каждого из которых приложение пытается сгенерировать новые данные. Предлагается типичное решение в виде использования семафора. Быстрый роутинг с помощью PHRoute Как привести в порядок PHP-приложение, 2 — Несколько рекомендации по улучшению производительности. Проверьте качество вашего кода с помощью SensioLabs Insight — Обзорный туториал по использованию сервиса от создателей Symfony. Бесплатно для проектов с открытым кодом. Fractal — практическое применение — Рассмотрено использование библиотеки Fractal для решения проблемы безболезненного изменения схемы БД в RESTful приложении. Цифровая подпись релизов проекта — Фабьен пишет о том, как использовать PGP-ключ для подписи Git тегов и архивов. Легаси код — это болезнь — О том, почему подход «поддерживать все, пока мы в состоянии» может обернуться проблемами. Профилирование с помощью Xhprof & Xhgui, 2 Использование Composer для Magento — Коротко о Composer и использовании Magento Composer Installer. Reasoned PHP — О логическом программировании и PHP. Автор реализовал интерпретатор логического языка на PHP. Реализация API в вашем легаси приложении с помощью Toro — Об использовании ToroPHP. Делаем запросы безопасными с помощью JWT (JSON Web Tokens) PECL/mysqlnd_ms: summer time, (connection) pool time — Пост об использовании расширения PECL/mysqlnd_ms для реализации репликации и балансировки нагрузки кластеров баз данных MySQL. Правила полета для Git — Сборник типичных проблем и решений для повседневной эффективной работы с Git. Строки в PHP — Руководство для начинающих. echo vs print — О разнице для начинающих. ruШаблоны проектирования в PHP: Цепочка обязанностей ru С Yii 1.1 на Yii 2.0: часть 1, часть 2 ruOpenSource-им PHP код habrПонимание и работа с данными в WordPress. Часть 1. Введение habrОптимизации WordPress. Часть 2. Итоги конкурсa «ВПС на год за лучшие идеи!» habrМалоизвестные функции в WordPress habrКрупная уязвимость в WordPress и Drupal может положить сайт habrИ опять атака на сайты Wordpress — перебор + XMLRPC habrТемы Wordpress и «бесплатный сыр» — 54% популярных тем для WP содержат зловредный код. habrПоучительная история о том, что может случиться с сайтом на shared-хостинге habrУскорение сайта на wordpress с Microsoft Azure по-быстрому habrСвой сервис скриншотов для спокойного сна habrНесколько версий PHP в ISPmanager habrMagento шаг за шагом: REST API habrBadoo PHP Code Formatter. Теперь в open source! habrГенерация xkcd паролей на PHP habrИ снова про монады в PHP habrСессии в PHP — подводный камушек при асинхронных запросах — Вопрос известный, но всплывает регулярно. В тему еще одно решение предложено здесь — данные сессии только для чтения. habrmysqlnd — проводник между PHP и MySQL be53e4256e771ad12bc412af8b30f91e.gif Аудио и видеоматериалы d4b289ef0a00e969108c25d0c3d75f58.gif Занимательное Быстрый поиск по всем дайджестам← Предыдущий выпуск

Только зарегистрированные пользователи могут оставлять комментарии.Войдите, пожалуйста.

© Habrahabr.ru