Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.
Приятного чтения!
Новости и релизы
- Релиз WordPress 3.5 — Вышла новая версия популярной CMS с множеством изменений и была загружена уже более 1 миллиона раз.
- 9й выпуск журнала Web And PHP — В номере раскрыты следующие темы: Как завершать множество проектов быстрее?; Каково место PHP разработчика в Agile?; Обзор PHP 5.4 (прим. вовремя); Почему замедляется работа базы данных? и другие.
- В PHP 5.5 ext/mysql объявлен устаревшим — В прошлом выпуске дайджеста мы упоминали о спорах на тему необходимости стимулировать разработчиков использовать современные API для работы с MySQL. И вот уже путем голосования принято решение о том, что в версии PHP 5.5 использование ext/mysql будет генерировать ошибки класса E_DEPRECATED. А вот и сам коммит.
PHP
- Под капотом объектов в PHP — Отличная статья, подробно раскрывающая все особенности внутренней реализации объектов в PHP. Автор в деталях рассказывает о жизненном цикле объекта, как объекты хранятся в памяти, что такое '$this' и о многом другом.
- Почему многие ненавидят PHP? — Автор дает развернутый ответ на данный вопрос, выделив несколько основных причин и подробно отвечая по каждому пункту. Причины, по мнению автора, следующие: несогласованные сигнатуры, PHP это HTML с логикой, отсутствие стандартов, отсутствие пакетов (менеджера зависимостей), неосведомленность о текущем состоянии PHP, элитизм («не использовать PHP это круто»).
- Почему я отказался от стандартов кодирования — В своем посте автор приводит причины, по которым решил отказаться от стандартов кодирования, а также призывает других разработчиков пересмотреть процессы и, возможно, последовать его примеру.
- Сколько памяти потребляют объекты в PHP и стоит ли использовать 64-битную версию? — Отличное исследование, опубликованное на Хабре, по результатам которого очевидно, что использование 64-битной версии PHP не всегда оправдано.
Материалы для обучения
- Ускоряем PHP-разработку с помощью HipHop VM — В конце 2011 ребята из Facebook анонсировали выход виртуальной машины Hip-Hop, реализующей подход JIT-компиляции для PHP. В данном посте рассказывается о последних обновлениях Hip-Hop VM, а также глубоко описаны некоторые детали архитектуры виртуальной машины и стратегии оптимизации.
- Standard PHP Library (SPL) — Часть 1: Структуры данных — Хороший обзор SPL на Хабре. Ждем продолжения.
- Пример целого приложения на Phalcon PHP — Демонстрация полноценного веб-приложения, полностью написанного на PHP фреймворке, поставляемом в виде нативного расширения. В данном примере авторы реализовали музыкальную библиотеку и демонстрируют работу фреймворка с большим объемом данных: > 5,000 Исполнителей, > 50,000 Альбомов, > 30,000 Тэгов, > 100,000 Треков > 200,000 Фотографий. Демо и код.
- О шаблонизаторах — Взгляд на шаблонизацию в веб-приложениях. Автор делает краткий обзор прошлого шаблонизации в PHP, а затем говорит о более современных инструментах, например Mustache и об их преимуществах.
- Итератор для провайдеров данных в Yii — Полезный рецепт использования CDataProviderIterator для провайдеров данных, когда возникает необходимость обработать большие объёмы данных, но при этом загрузить все данные сразу в память не представляется возможным.
- Метапрограммирование на PHP — В посте автор определяет, какие задачи может решать метапрограммирование и какие нет, а также, какие инструменты следует использовать на PHP для их решения.
- Внедрение зависимости на PHP — Простая и понятная статья, в которой рассказывается, что же такое Dependency Injection. Приведен пример рефакторинга с использованием DI, перечислены преимущества и также типичные варианты использования.
- References — Продолжение серии видео от Anthony Ferrara. На этот раз рассмотрены переменные и ссылки в PHP, их внутреннее устройство.
- Prepared Statements — В этом видео Anthony Ferrara рассказывает базовые принципы Prepared Statements и о преимуществах их использования. Вся серия.
- Инверсия управления — В данном посте автор подробно рассказывает, что же такое Inversion of Control. Сначала расставляет точки над связью между DI и IoC, а затем, на примере блога, показывает преимущества использования инверсии управления.
- Обработка соединения с помощью драйвера MongoDB для PHP — В статье рассматривается недавно вышедший драйвер MongoDB версии 1.3 для PHP. Приведено сравнение c обработкой соединения в предыдущей версии, рассмотрены продвинутые возможности нового драйвера. Рассмотрены практические примеры на PHP.
- Отправляем письма с помощью Swift Mailer — Простой пример использования базовых возможностей (отправка текста, письма с приложением, шаблонизация) известной библиотеки для отправки писем.
- Автоматизация сборки с помощью скриптов в Composer — Composer отличный инстурмент для управления зависимостями в PHP. Но это еще не все, что он умеет! В данной статье показано, как можно использовать Composer в качестве простого инструмента для автоматизации сборки.
- История любви к Silex — 'Embedded' PHP — Автор рассказывает о своем первом опыте использования PHP-микрофрейморвка Silex. На реальном примере показано, как эволюционировал код в процессе развития проекта.
- Автоматизация с использованием триггеров MySQL — Хотя перенос логики приложения в триггеры базы данных многие считают плохой идеей, тем не менее, существует ряд случаев, когда их использование оправдано и помогает решать поставленные задачи проще. В данной статье рассказывается о, собственно, триггерах, и приводятся примеры использования.
- Ошибки PHP: классификация, примеры, обработка — Если вы опытный разработчик, то эта статья с Хабра поможет структурировать знания. Если же вы не так давно работаете с PHP, то этот пост даст исчерпывающий объем информации по теме ошибок в PHP.
- 5 вещей, которые не умеет делать CodeIgniter — В посте автор перечисляет и описывает 5 основных возможностей, присутствующих почти в любом современном PHP фреймворке, но, которых пока нет в CodeIniter: пространства имен, автозагрузка, модульные тесты, миграции и абстрактный слой БД.
- PHPitfalls — В посте автор аккумулировал свой опыт работы с PHP и привел множество полезных рекомендаций для разработчиков.
- Гид по кросс-доменному AJAX — В посте автор рассказывает о трех основных способах реализации кросс-доменных запросов, а также о некоторых нюансах каждого: CORS, JSONP, Iframe.
- Приватные методы — «за» или «против»? — По данной теме разразилась целая дискуссия. В ответ на свой пост автор получил волну комментариев и, в том числе, ответный пост от Anthony Ferrara. После чего автор написал еще один пост в свою защиту. И затем, известный деятель Drupal-сцены, Larry Garfield изложил собственное мнение по данному вопросу.
- Tweetable PHP-Non Alpha — Интересный эксперимент, в котором автор пишет PHP скрипт без использования числовых и буквенных символов.
- The Underground PHP and Oracle Manual — Ребята из Oracle обновили и выложили отличную бесплатную книгу, которая содержит уникальный материал по PHP-расширению OCI8 для работы с базой данных Oracle, а также по другим компонентам из экосистемы PHP-Oracle. В книге PHP-разработчикам показывается, как просто и эффективно использовать вместе PHP и Oracle.
CMS/CMF
- Создаем модуль «Новая почта» для Magento, 2 — Простой и подробный туториал по созданию модуля для Magento в двух частях.
- Заставляем сайты на WordPress летать используя NGINX, PHP-FPM+APC и Varnish
- Вставляем виджеты с помощью шорткодов в WordPress
- Как стать профессионалом высочайшего уровня по разработке на WordPress
-
Релизы плагинов для WordPress
- WP-Elasticsearch — заменяет стандартный поиск в WordPress на ElasticSearch.
- Fast Secure Contact Form — еще одна хорошая форма связи с множеством опций и защитой от спама.
- HyperDB — продвинутый класс для работы с базой данных, который поддерживает репликацию, балансировку нагрузки, партиционирование.
- Fonts — добавляет дополнительные возможности по управлению шрифтами в редактор.
- Authy — позволяет добавить двухфакторную авторизацию используя сервис Authy на вашем WordPress сайте.
- Search Exclude — микроплагин, предназначенный для исключения любых постов и страниц из результатов поиска по сайту.
- GC Message Bar — позволяет добавить sticky-сообщение на страницах вашего сайта.
- Memory Load Consumption and db size Usage — отображает информацию об используемой памяти и ресурах базы данных.
- Keyring — предоставляет очень гибкие возможности по интеграции вашего сайта на WordPress с внешним сервисом.
- Rich Contact Widget — позволяет выводить информацию о сайте в расширенных сниппетах поисковых систем.
- Schema Creator — добавляет микроданные schema.org к страницам и постам.
Ссылка на предыдущий выпуск.
Материал подготовили dbritan, nesttor и pronskiy
Автор: alexzfort