• Главная
  • Контакты
Подписаться:
  • Twitter
  • Facebook
  • RSS
  • VK
  • PushAll
logo

logo

  • Все
    • Положительные
    • Отрицательные
  • За сегодня
    • Положительные
    • Отрицательные
  • За вчера
    • Положительные
    • Отрицательные
  • За 3 дня
    • Положительные
    • Отрицательные
  • За неделю
    • Положительные
    • Отрицательные
  • За месяц
    • Положительные
    • Отрицательные
  • За год
    • Положительные
    • Отрицательные
  • Сортировка
    • По дате (возр)
    • По дате (убыв)
    • По рейтингу (возр)
    • По рейтингу (убыв)
    • По комментам (возр)
    • По комментам (убыв)
    • По просмотрам (возр)
    • По просмотрам (убыв)
Главная
  • Все
    • Положительные
    • Отрицательные
  • За сегодня
    • Положительные
    • Отрицательные
  • За вчера
    • Положительные
    • Отрицательные
  • За 3 дня
    • Положительные
    • Отрицательные
  • За неделю
    • Положительные
    • Отрицательные
  • За месяц
    • Положительные
    • Отрицательные
  • Главная
  • PHP-Дайджест № 107 – свежие новости, материалы и инструменты (9 – 23 апреля 2017)

PHP-Дайджест № 107 – свежие новости, материалы и инструменты (9 – 23 апреля 2017) +50

23.04.2017 20:20
pronskiy 12 13300 Источник
Разработка веб-сайтов*, PHP*, Блог компании Zfort Group


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


Новости и релизы


  • Yii 1.1.18
  • HHVM 3.19
  • PHP 7.0.18, PHP 7.1.4
  • Объявлены релиз-менеджеры PHP 7.2 — Ими стали Sara Golemon, прежде была лидером HHVM, а также Remi Collet, мейнтейнер известного репозитория имени себя. Оба много контрибьютили в PHP.
  • habr YiiConf 2017 — 16 июня 2017 в Москве пройдёт конференция веб-разработчиков, посвящённая PHP фреймворку Yii.
  • DevConf 2017 — 17 июня в Москве пройдет очередная ежегодная конференция для веб-разработчиков. Открыт прием заявок на доклады.
  • PHP Frameworks Days 2017 — 11 июня в Киеве пройдет ежегодная конференция посвященная PHP. Список докладчиков формируется, но уже заявлены Zeev Suraski, Marco «Ocramius» Pivetta, Mariusz Gil, Lukasz Szymanski.

PHP


  • Замена интерфейса Serializable — Предложение от Никиты Попова, пока не оформленное в виде RFC. Текущая реализация интерфейса имеет ряд проблем, в том числе безопасности. Предлагается использовать интерфейс с магическими методами, которые не требуют вызова serialize/unserialize, вместо этого работают с массивами:

    public function __serialize() : array;
    public function __unserialize(array $data) : void;
    

Инструменты


  • spiral/spiral 1.0.0 — RAD фреймворк с поддержкой PSR7 и HMVC архитектурой.
  • povils/phpmnd — Детектор использования магических чисел в PHP
  • cytopia/devilbox — Современная замена XAMPP на базе Docker.
  • Pterodactyl/Panel — Панель управления игровым сервером на основе Laravel.
  • minds/minds — Реализация социальной сети с бэкендом на PHP.
  • pietercolpaert/hardf — Библиотека для работы с RDF. Порт N3.js.
  • Генератор конфига Docker Compose для популярных PHP-фреймворков и CMS
  • opis/closure — Библиотека позволяет сериализовать замыкания. Альтернатива jeremeamia/super_closure.

Материалы для обучения


  • Symfony

    • Продолжение серии статей от Fabien Potencier, об Symfony 4 и его экосистеме:

      • Структура директорий
      • Автоматизация рабочего процесса
      • Репозитории рецептов

    • Неделя Symfony #537 (10-16 апреля 2017)
    • Неделя Symfony #538 (17-23 апреля 2017)

  • Yii

    • Yii development notes #5
    • Yii Вопросы и Ответы — часть 1
    • Обработка ошибок и исключений в Yii
    • ru Доменные сущности и Doctrine ORM в Yii2
    • habr Yii2-advanced: Гибкая настройка Yii2 RBAC (роли, разрешения, правила)

  • Laravel

    • clarkeash/doorman — Система приглашений для Laravel.
    • Создание бота викторины для Facebook Messenger на Laravel
    • Туториал по созданию хелпера для Laravel

  • Zend

    • andrey-mokhov/bjy-profiler — Профайлер SQL запросов для ZF3. Прислал mokhovcom.
    • Неделя Zend Framework — 2017-04-13
    • Неделя Zend Framework — 2017-04-20

  • Обзор Xdebug по случаю 15-ти летия инструмента
  • Трейты — зло?
  • Когда следует объявлять методы финальными
  • От массивов к классам
  • Построение гибких PHP приложений — Прислал im_special_one.
  • Автозапуск PHPUnit тестов с помощью Watchman
  • Обзор PhalconPHP для разработки высоконагруженных RESTful API
  • Как использовать новый код в легаси-приложении
  • Начинаем работать с RabbitMQ в PHP
  • Запускаем PHP, Ruby, и Go на AWS Lambda
  • ru DDD в PHP: Value Object или Объект-Значение
  • ru Создание строго типизированных массивов и коллекций с использованием value object
  • habr php-cs-fixer: Пишем свой фиксер
  • habr Сравнение производительности версий PHP
  • habr Шаблоны проектирования с человеческим лицом
  • habr Виртуальная Машина PHP 7

Занимательное


  • О проблемах в сообществе PHP — Прислал im_special_one.
  • habr $PHP не нужен

Спасибо за внимание!

Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку.
Вопросы и предложения пишите на почту или в твиттер.

Прислать ссылку
Быстрый поиск по всем дайджестам
< Предыдущий выпуск: PHP-Дайджест № 106
Поделиться с друзьями
-->

Комментарии (12)


  1. Gemorroj
    24.04.2017 11:49
    #10188280

    Может кто-нибудь пояснить по поводу сериализации? Проблема с безопасностью-то понятна, но зачем мне массив в результате сериализации?


    1. SonicGD
      24.04.2017 15:11
      #10188690
      +2

      Чтобы убрать вызовы serialize/deserialize из методов и избавиться от проблем очерёдности этих вызовов. Вы просто возвращаете массив данных, которые должны попасть в итоговую строку, а потом на вход принимаете такой же массив для наполнения объекта.


  1. shuchkin
    24.04.2017 17:22
    #10188936

    По статье о замене ассоциативных массивов объектами: в типовом веб приложении, где извлекаем данные из базы и по цепочке методов передаём шаблонизатору, реальная экономия памяти составляет до 40%


    1. ninadata
      24.04.2017 19:56
      #10189114

      В какой версии PHP?


      1. shuchkin
        24.04.2017 22:12
        #10189324

        Давно тестировал, в 5.2, сейчас должно быть ещё лучше из-за оптимизации в 7
        было примерно так: echo get_comments(123) — $post->get_comments() — $db->query — mysqli_fetch_assoc
        — съедает память из за копирования массива в каждом звене
        стало: echo get_comments(123) — $post->get_comments() — $db->query — mysqli_fetch_object
        — по сути массив ссылок передаётся и всё

        * можно передавать массив по ссылке, но это не наш путь

        главное, на что указывает автор, что в каждом массиве хранятся ещё и ключи, а в объектах нет


        1. Fesor
          26.04.2017 10:42
          #10191520

          съедает память из за копирования массива в каждом звене

          там же copy-on-write так что "съедать" должно только если вы в каждом "звене" что-то делаете с данными.


          1. shuchkin
            26.04.2017 10:58
            #10191570

            спасибо за уточнение
            у меня там данные менялись


  1. bm13kk
    24.04.2017 17:22
    #10188938

    Из рабочего чата


    Newest PHP (7.0.18 / 7.1.4) has new “feature” (https://bugs.php.net/bug.php?id=74216) that breaks predis


  1. de1vin
    25.04.2017 01:20
    #10189510
    +1

    Кто-нибудь spiral успел попробовать? Как ощущения?
    Неделю назад на него наткнулся, хотел использовать в будущем rad проекте вместо yii


    1. Lachezis
      25.04.2017 02:14
      #10189526
      +4

      Постоянно используем ее в продакшене (50+ проектов), но я автор и этот ответ не считается.


    1. SamDark
      25.04.2017 14:23
      #10190304

      Spiral получился интересным, но я бы не стал надеяться на RAD в продакшне с новым, ещё не изученным фреймворком.


  1. TutmeeAgency
    02.05.2017 16:10
    #10200222

    Спасибо за полезную информацию! Статью «Построение гибких PHP приложений» перевел, https://habrahabr.ru/post/327746/

МЕТКИ

  • Хабы
  • Теги

Разработка веб-сайтов

PHP

Блог компании Zfort Group

дайджест

php-дайджест

новости

подборка

ссылки

веб-разработка

php

PHP 7

symfony

yii

Laravel

Zend Framework

СЕРВИСЫ
  • logo

    CloudLogs.ru - Облачное логирование

    • Храните логи вашего сервиса или приложения в облаке. Удобно просматривайте и анализируйте их.
Все публикации автора
  • PHP-Дайджест № 113 – свежие новости, материалы и инструменты (16 – 30 июля 2017) +58

    • 30.07.2017 21:45

    PHP-Дайджест № 112 – свежие новости, материалы и инструменты (26 июня – 16 июля 2017) +47

    • 16.07.2017 20:57

    PHP-Дайджест № 111 – свежие новости, материалы и инструменты (12 – 25 июня 2017) +26

    • 25.06.2017 20:39

    PHP-Дайджест № 110 – свежие новости, материалы и инструменты (28 мая – 11 июня 2017) +50

    • 11.06.2017 22:10

    PHP-Дайджест № 109 – свежие новости, материалы и инструменты (14 – 28 мая 2017) +60

    • 28.05.2017 20:52

    PHP-Дайджест № 108 – свежие новости, материалы и инструменты (24 апреля – 14 мая 2017) +45

    • 14.05.2017 20:22

    PHP-Дайджест № 107 – свежие новости, материалы и инструменты (9 – 23 апреля 2017) +50

    • 23.04.2017 20:20

    PHP-Дайджест № 106 – свежие новости, материалы и инструменты (26 марта – 9 апреля 2017) +53

    • 09.04.2017 20:09

    PHP-Дайджест № 105 – интересные новости, материалы и инструменты (13 – 26 марта 2017) +46

    • 26.03.2017 20:00

    PHP-Дайджест № 104 – интересные новости, материалы и инструменты (1 – 12 марта 2017) +60

    • 12.03.2017 21:15

Подписка


ЛУЧШЕЕ

  • Сегодня
  • Вчера
  • Позавчера
05:08

Память о глубине: топим литиевые аккумуляторы на 1500 м +72

05:27

Вайбанутым нет покоя +60

15:12

Верховный Суд полностью отменил все предыдущие решения по делу Долиной: квартира остается за покупательницей +53

07:49

Value Object: как победить примитивную одержимость без DDD +42

09:20

Изящные, ненормальные и удивительные алгоритмы на C +27

07:01

Пять книг о российских технологических компаниях +26

08:42

Как оптимизировать код WebAssembly при помощи встраивания функций и деоптимизации +25

08:00

Декабрьская пятерка мини-ПК: компактные, мощные, необычные +23

10:01

8 лучших RDP-клиентов 2025 года +22

09:01

Коллекция полезных CSS фишек, которые вы редко используете +22

02:01

НАЙС.ОС — как Не пересборка RHELL оказалась RHEL +21

07:00

Client Hints: разбор технологии, которая заменит User-Agent +19

06:31

Первенец Acer — миниатюрный ноутбук AcerNote 300C +19

08:50

Стилизация, часть 3. Превращение в стиль +18

00:23

Google Maps для биржевого стакана: пишем визуализатор данных Московской биржи на Python +18

09:59

Как приземляться в Top Gun: проверено реверс-инжинирингом +16

07:05

История контактных линз и то, как я сам стал “линзариком”. Часть 2 +16

09:09

Атрибуция кибератак: почему иногда «не знаю» — единственный честный ответ +15

13:01

Мороз по коже: LLM может оценить ваш код, а ИИ-компании — использовать это в своих целях +14

08:00

Под капотом пул-реквеста: как мы ускоряли индексирование кода для удобной навигации при ревью +14

01:02

Как молодой девушке уехать на Яндекс.Такси в промзону и пропасть среди гаражей +240

13:01

Как я обнаружил скрытый микрофон в китайском NanoKVM +133

07:44

Почему учителя бегут из школ, а дети не хотят учиться — и как я это исправляю +94

09:01

Firefox — лучший мобильный браузер +81

13:33

Вход — бесплатно, выход — по подписке: разбор реального скама +68

13:03

Меня обвинили в том, что я — нейросеть +58

10:05

Это есть в Word, но мало кто об этом знает. Лайфхаки для продвинутого использования +39

08:00

Дешевых ПК и ноутбуков больше не будет: готовимся к 2026 году +35

07:59

Синдром бесконечного окна: почему 1 миллион токенов в LLM не решает ваши проблемы (пока) +33

19:17

Шпаргалка по настройке VPS на Debian/Ubuntu (2025) +28

04:57

Перетягивание замороженных активов с ЕС, а также космические дата-центры Илона Маска +28

07:30

ИИ-агент: менеджер, которого у вас нет. Реальный кейс, как заменять манагеров в пиковые часы на Avito +22

05:16

Как я уже 5 лет создаю свою макрос-клавиатуру. И почему не бросил этот проект +22

10:32

Как подружить аудиторию старшего поколения с ИИ: результаты исследования +19

11:19

Гайд: Как прострелить ноги unsafe кодом в C# +18

07:33

Как мы запускали «марсоход» на PostgreSQL: автоматизация кластеров в изолированной среде крупной компании +18

05:42

Лучшие практики по настройке конфигураций в Kubernetes +18

15:39

От Адама и Евы к «Моим документам»: история хранения и передачи личной информации +17

11:58

Как мы учили поиск понимать контекст: практическое руководство Купера для маркетплейсов +17

11:25

Где дешевле и безопаснее хранить данные: сравниваем жесткие диски, магнитные ленты, облака и оптику +17

22:11

Пожалуйста, почините найм +171

11:20

Тайная жизнь оконного стекла: история, технологии и немного олова +51

16:43

Если вы эксперт 45+ и вдруг решили сменить работу +49

09:01

В GitHub Actions, пожалуй, худший пакетный менеджер +48

13:01

Дело Solar Sunrise: кто «ломал Пентагон» в феврале 1998 года? +45

16:05

Телевизионные передачи 90-х +43

08:00

Станет ли FreeBSD 15.0 новым шагом в развитии свободной ОС +42

15:16

Ретроспектива 2025: Денежный дождь закончился +35

05:00

Минимальный набор практик для микросервиса +28

14:55

Абсурд прогресса. Почему «высокий уровень жизни» не продлевает годы, а крадет их? +26

10:28

Я доверил деньги нейросети, чтобы не сидеть у монитора 24/7: результаты эксперимента с алготрейдингом +19

19:36

Ночь, телескоп, ИИ, комета: анализ спектра 3I/ATLAS с собственным Python-pipeline +18

17:25

Мы больше не увидим BSoD на вывесках и табло +13

07:00

[Resource Quota] А что, если ваш финансовый потолок — это не баг, а защита от перегрева? +13

13:20

Самобеглый чемодан +11

12:45

Как Европа развивает свою open source-экосистему — и какие новые возможности по кооперации появляются у стран БРИКС +11

12:40

Эта музыка будет вечной: микросервисы против монолита, camelCase против snake_case и другие неугасающие споры в ИТ +7

12:15

Полиграф: иллюзия точности. Как метод без научного фундамента нарушает права и манипулирует законодательством +7

21:14

Поиск по подстроке — ответ системного аналитика на собеседовании +6

13:30

Новогодний IT-челлендж для разработчиков: сможете расшифровать сообщение? +6

ОБСУЖДАЕМОЕ

  • Пожалуйста, почините найм +171

    • 362   60000

    Почему учителя бегут из школ, а дети не хотят учиться — и как я это исправляю +94

    • 298   78000

    Как молодой девушке уехать на Яндекс.Такси в промзону и пропасть среди гаражей +240

    • 240   39000

    Если вы эксперт 45+ и вдруг решили сменить работу +49

    • 196   22000

    Меня обвинили в том, что я — нейросеть +59

    • 177   13000

    Как я обнаружил скрытый микрофон в китайском NanoKVM +133

    • 125   140000

    Абсурд прогресса. Почему «высокий уровень жизни» не продлевает годы, а крадет их? +26

    • 119   12000

    Firefox — лучший мобильный браузер +81

    • 100   29000

    Я доверил деньги нейросети, чтобы не сидеть у монитора 24/7: результаты эксперимента с алготрейдингом +19

    • 89   54000

    Ретроспектива 2025: Денежный дождь закончился +35

    • 69   15000

    Мы больше не увидим BSoD на вывесках и табло +13

    • 63   36000

    C++, Rust и цветовая дифференциация воротничков +11

    • 49   6700

    [Resource Quota] А что, если ваш финансовый потолок — это не баг, а защита от перегрева? +13

    • 46   8000

    Шпаргалка по настройке VPS на Debian/Ubuntu (2025) +28

    • 45   15000

    Вайбанутым нет покоя +60

    • 41   13000
  • Главная
  • Контакты
© 2025. Все публикации принадлежат авторам.