Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Новый PhpStorm 7: за пределами языка

Блог компании JetBrainsРазработка веб-сайтовPHP
PhpStorm 7: за пределами языкаСпешим сообщить о выходе PhpStorm 7 — новой версии IDE для разработки на PHP от JetBrains.

PhpStorm 7 позволит вам не отставать от последних изменений в PHP и других языках для веб-разработки. В этом выпуске IDE интегрирован ряд современных инструментов и предусмотрено еще больше возможностей для расширения за счет поддержки основных PHP-фреймворков.

В 7-й версии вас ждут многие новые фичи, а также улучшения, коснувшиеся всех подсистем продукта.

Давайте посмотрим, что нового в PhpStorm 7!
Читать дальше →
Всего голосов 99: ↑97 и ↓2+95
Просмотры56K
Комментарии 210

Дайджест интересных новостей и материалов из мира PHP № 31 (25 ноября — 8 декабря 2013)

Блог компании Zfort GroupРазработка веб-сайтовPHP


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

Приятного чтения!
Читать дальше →
Всего голосов 51: ↑46 и ↓5+41
Просмотры19K
Комментарии 13

Лучшее из мира PHP за 2013 + конкурс от компании JetBrains! Дайджест интересных материалов №32

Блог компании Zfort GroupРазработка веб-сайтовPHP


Следуя традиции, мы решили подвести итоги уходящего года и выделить самые значимые события в мире PHP, которых, к счастью, было немало. И, конечно же, подборка с ссылками на свежие материалы за последние три недели.

Под катом вас также ждет конкурс с призами от компании JetBrains!
Читать дальше →
Всего голосов 69: ↑56 и ↓13+43
Просмотры30K
Комментарии 94

HHVM, Nginx и PHP (а также Laravel)

PHPLaravel
Перевод
Tutorial
HHVM + Nginx + PHP + LaravelМножество людей интересовалось установкой HHVM на Nginx для использования с Laravel. Давайте приступим.

HHVM (или HipHop Virtual Machine) — это виртуальная машина, предназначенная для выполнения программ, написанных на PHP. Использует технологию JIT компиляции для увеличение скорости выполнения байткода.

Вступление

Как и в большинстве моих статей, я буду использовать Ubuntu 12.04 LTS как сервер для установки нашего добра. Однако, мы вполне можем установить это все на Mac с помощью Brew (nginx и hhvm). Информация об установке HHVM на другие платформы (включая новые версии Ubuntu) может быть найдена здесь.

Ну что же, поехали!
Читать дальше →
Всего голосов 50: ↑39 и ↓11+28
Просмотры43K
Комментарии 42

Дайджест интересных новостей и материалов из мира PHP № 33 (1 января — 12 января 2014)

Блог компании Zfort GroupРазработка веб-сайтовPHP


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

Приятного чтения!
Читать дальше →
Всего голосов 46: ↑42 и ↓4+38
Просмотры16K
Комментарии 15

Дайджест интересных новостей и материалов из мира PHP № 34 (13 — 26 января 2014)

Блог компании Zfort GroupРазработка веб-сайтовPHP


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

Приятного чтения!
Читать дальше →
Всего голосов 61: ↑52 и ↓9+43
Просмотры23K
Комментарии 32

Дайджест интересных новостей и материалов из мира PHP № 35 (26 января — 9 февраля 2014)

Блог компании Zfort GroupРазработка веб-сайтовPHP


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

Приятного чтения!
Читать дальше →
Всего голосов 57: ↑47 и ↓10+37
Просмотры17K
Комментарии 11

Дайджест интересных новостей и материалов из мира PHP № 36 (9 — 23 февраля 2014)

Блог компании Zfort GroupРазработка веб-сайтовPHP


Предлагаем вашему вниманию очередную подборку актуальных новостей, интересных материалов и полезных инструментов.

Приятного чтения!
Читать дальше →
Всего голосов 72: ↑60 и ↓12+48
Просмотры21K
Комментарии 32

Дайджест интересных новостей и материалов из мира PHP № 37 (24 февраля — 9 марта 2014)

Блог компании Zfort GroupРазработка веб-сайтовPHP


Поздравляем всех девушек и особенно PHP-разработчиц с прошедшим праздником! Всяческих вам успехов, любви и тепла!

И конечно же, вашему вниманию очередная подборка ссылок со свежими новостями, полезными инструментами и интересными материалами.

Приятного чтения!
Читать дальше →
Всего голосов 60: ↑54 и ↓6+48
Просмотры23K
Комментарии 17

Опциональные зависимости не нужны

PHPПрограммирование
Перевод
В данном посте речь пойдет о пакетах PHP и об алкогольных зависимостях. Вернее, о так называемых опциональных или предложенных зависимостях (optional dependencies, suggest/dev-dependencies), которые определяются в composer.json.

Что такое зависимость?


Для начала разберемся с тем, что такое зависимость и о чем вообще речь. Есть следующий код:

namespace Gaufrette\Adapter;
 
use Gaufrette\Adapter;
use \MongoGridFS;
 
class GridFS implements Adapter
{
    private $gridFS;
 
    public function __construct(MongoGridFS $gridFS)
    {
        $this->gridFS = $gridFS;
    }
 
    public function read($key)
    {
        $file = $this->find($key);
 
        return ($file) ? $file->getBytes() : false;
    }
}

Класс GridFS — часть библиотеки абстрактной файловой системы Gaufrette, которую я в какой-то степени изменил. Для определения всех зависимостей этого кусочка кода мы должны задать себе следующие вопросы:

  • Что нужно, чтобы данный код заработал?

Читать дальше →
Всего голосов 52: ↑44 и ↓8+36
Просмотры9K
Комментарии 6

Ускоряем PHP (с ReactPHP)

Высокая производительностьPHPSymfony
В этом посте я хотел бы поделиться не совсем обычным, для мира PHP, способе построения приложения, если угодно — архитектурой. Данный подход позволяет средствами PHP увеличить количество обрабатываемых запросов в разы. Так же я поделюсь своими наработками в этом направлении. Конечно данный подход не бесплатен, в плане требований к коду, но давайте всё по порядку.
Читать дальше →
Всего голосов 51: ↑44 и ↓7+37
Просмотры75K
Комментарии 64

Расцвет Composer и закат PEAR

Разработка веб-сайтовPHPSymfony
Перевод
[Дабы не возникло недопонимания, стоит пояснить, что автор оригинального текста — Fabien Potencier, создатель популярного PHP фреймворка Symfony — прим. пер.]

Совсем недавно, Nils Adermann, прислал мне милую открытку, в напоминание о нашей встречи три года назад на “SymfonyLive hackday” в Сан-Франциско. Nils присутствовал на конференции, т.к. за год до этого, он анонсировал, что phpBB в версии 4 перейдет на Symfony.

В то время, я серьезно интересовался темой менеджеров пакетов, ибо искал удобный способ управлять бандлами в Symfony2. Для плагинов в Symfony1 я использовал PEAR, но код был очень запутанным, ведь PEAR изначально создавался немного не для этого. Философия Бандлера из Ruby сообщества выглядела очень привлекательно, так что я начал поиски подобного пакетного менеджера. После долгих бессонных ночей, я наткнулся на libzypp, и моментально понял, что это оно! К сожалению libzypp — сложная библиотека, написанная на C, и в таком виде, совсем не подходила для Symfony.

Я смекнул, что хорошим менеджером пакетов, позволяющим пользователям легко устанавливать плагины/бандлы/моды наверняка интересуется и Nils, для phpBB, так что я завел об этом разговор на hackday в Сан-Франциско. Оказалось, что в то время, Нилс уже начал работу над Composer.
Читать дальше →
Всего голосов 41: ↑37 и ↓4+33
Просмотры16K
Комментарии 29

25 Laravel Tips and Tricks

PHPLaravel
Перевод
Было время, достаточно недавно, когда PHP и его сообщество ненавидели. Главная шутка была про то, насколько ужасен PHP.

Да, к сожалению, сообщество и экосистема просто были ниже сообществ других современных языков по уровню. Казалось, что предназначение PHP было прожить большинство времени в форме беспорядочных тем для WordPress.

Но позже, на удивление, вещи начали меняться — и достаточно быстро. Как будто пока ведьма помешивала горшочек, из ниоткуда начали появляться новаторские проекты. Наверно, самый заметный проект был Composer: наиболее полный менеджер зависимостей для PHP (как Bundler для Ruby или NPM для Node.js). В прошлом PHP разработчики были вынуждены совладать с PEAR (что было страшным сном, на самом деле), сейчас, благодаря Composer, они могут просто обновить JSON файл, и немедленно подтянуть все нужные зависимости. Здесь — профайлер, там — фреймворк для тестирования. Это занимает секунды.
Читать дальше →
Всего голосов 47: ↑40 и ↓7+33
Просмотры77K
Комментарии 190

Дайджест интересных новостей и материалов из мира PHP № 41 (май 2014)

Блог компании Zfort GroupРазработка веб-сайтовPHP


После небольшого перерыва PHP-дайджест снова в деле! Вашему вниманию подборка со ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Всего голосов 79: ↑69 и ↓10+59
Просмотры21K
Комментарии 9

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

Блог компании Zfort GroupРазработка веб-сайтовPHP


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

Приятного чтения!
Читать дальше →
Всего голосов 85: ↑73 и ↓12+61
Просмотры27K
Комментарии 21

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

Блог компании Zfort GroupРазработка веб-сайтовPHP


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

Приятного чтения!
Читать дальше →
Всего голосов 50: ↑44 и ↓6+38
Просмотры22K
Комментарии 15

Создание пакета для Laravel

Разработка веб-сайтовPHPLaravel
Из песочницы
Привет Хабр!

Фреймворк Laravel быстро набирает популярность и уже обрел большую армию фанатов. В этой статье я опишу разработку простого пакета для Laravel, а так же публикацию созданного нами пакета на сайте packagist.org для того, чтобы добавлять наш пакет в проект одной строчкой в composer.json.

Итак, о чем все это


Пакеты (packages) — основной способ добавления нового функционала в Laravel, так говорит нам официальная документация. Мы создадим пакет специально для Laravel, это будет простой блог со списком записей и страницей для просмотра статьи. Мы не ставим целью написать превосходный, универсальный блог с кучей возможностей для кастомизации, мы лишь рассмотрим все тонкости создания пакета, как независимого расширения, которое поможет в будущем избежать дублирования кода в своих проектах, при решении рутинных задач.

В итоге мы получим это.


Читать дальше →
Всего голосов 31: ↑23 и ↓8+15
Просмотры26K
Комментарии 3

Как Composer на 70% ускорили

Разработка веб-сайтовPHP
image
По всей видимости, на наших глазах родился еще один легендарный коммит (осторожно, в комментариях сплошные гифки):

github.com/composer/composer/commit/ac676f47f7bbc619678a29deae097b6b0710b799

При попытке разобраться с проблемой производительности Композера поступило предположение, что причина проблемы кроется в сборщике мусора:

Это действительно может быть проблемой по части GC. Если создается много объектов, и все они не могут быть «удалены», то GC в PHP начинает сходить с ума — он постоянно пытается провести сборку мусора, но убирать-то нечего — поэтому он просто тратит лишнее время/такты процессора. На это указывает и то, что проблема выявляется только на больших проектах (= много объектов), но не так заметна на маленьких (= GC включается не так часто).
Читать дальше →
Всего голосов 100: ↑94 и ↓6+88
Просмотры55K
Комментарии 66

Composer. Небезопасно использовать packagist и приватный источник пакетов одновременно

PHP
image
Уже было нечто подобное. Хотя это поведение багом не было, но его исправили. Дело было в том, что composer мог установить не тот пакет, который указан в composer.json, а замещающий его: Composer: Replace, Conflict & Forks Explained, Composer: Downloading Random Code Is Not A Security Vulnerability?. Но осталось другое поведение. Оно очевидно, но, как мне кажется, обделено вниманием.
Читать дальше →
Всего голосов 12: ↑9 и ↓3+6
Просмотры6.4K
Комментарии 5

Лучшее из мира PHP за 2014 год + конкурс от компании JetBrains! PHP‑Дайджест № 53

Блог компании Zfort GroupРазработка веб-сайтовPHP


Следуя традиции, мы решили подвести итоги уходящего года и выделить самые значимые события в мире PHP, которых, к счастью, было немало. И конечно же, подборка со ссылками на свежие материалы за последние три недели.

Под катом вас также ждет конкурс с призами от компании JetBrains!
Читать дальше →
Всего голосов 37: ↑33 и ↓4+29
Просмотры26K
Комментарии 43