• Главная
  • Контакты
Подписаться:
  • 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

Подписка


ЛУЧШЕЕ

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

Не верьте AI на слово: практический эксперимент с задачей оптимизации +5

06:02

Сброс настроек VOIP телефона Cisco SPA504G +4

05:58

Чтение на выходные: подборка книг о взлетах и провалах в геймдеве +4

07:23

Наследие кода: разбор С и С++ модулей Erlang, которые работают десятилетиями +3

07:15

B2B-отношения: лояльность через клиентские данные +3

07:05

Что известно о межзвёздной комете 3I/ATLAS, которую можно увидеть сейчас? +3

06:24

Настраиваем nano под себя +3

07:12

Интеллектуальный поиск: почему RAG уже недостаточно и как мы его превзошли +2

06:50

От школьного репетиторства до 14 курсов и 1000 студентов: мой путь в edtech +2

05:27

Когда знаний в избытке +2

07:07

И еще раз о безопасности на канальном уровне +1

07:05

В защиту «обычных» разработчиков +1

06:54

Ученые предложили новый компас для определения достаточного количества данных для обучения ИИ +1

06:25

Может ли искусственный интеллект заменить человека? +1

06:18

Часть 3 Powered Device +1

04:22

Рекомендации по монтажу печатных плат с покрытием иммерсионным оловом ImSn (Immersion Tin) +1

03:03

Как мы пытались создать агрегатор фотографов с киллер фичей +1

08:22

Эмуляция «тетриса» Apollo из 90-х и запуск кода на оригинальном железе +86

09:01

Реставрация, которая меня сломала: Почему убрать смех из Скуби-Ду сложнее, чем сделать ремастер Тома и Джерри в 2к +52

08:00

А кто у вас отвечает за kube-api? Безопасность Kubernetes при помощи CIS Benchmark +45

05:06

Как изготовить корпус из листового металла +39

08:57

Перед вами первый «торговый автомат» по продаже крепкого алкоголя. Вы не поверите, но ему уже почти три века +36

07:02

Почему операционный усилитель — плохой компаратор +32

12:11

Open source-стратегии: как МойОфис развивает открытый подход — рассказывает Тамара Щепалкина, CTO компании +30

09:58

Кому нужен Graphviz, если можно написать его самому? +30

05:34

Эти компании заменили тысячи людей на ИИ, а потом дали заднюю. Как так вышло? +29

12:15

Как мы воскресили русский NLP и сократили потребление памяти на 90% +28

07:00

История опенсорс-проекта LUWRAIN: как эксперименты с LLM помогают создавать невизуальные интерфейсы для незрячих +26

13:15

Поднимаем внутренний мессенджер и VoIP-сервер без нарушения законодательства +25

07:38

Почему я отказался от ORM в пользу чистого SQL +25

06:01

Особенности Python, о которых вас точно спросят на техническом собеседовании. Часть 2 +24

13:01

Ansible Inventory: полное руководство от localhost до AWS +20

07:05

Вкус успеха: съедобные 3D модели +20

12:44

Пять лет спустя: почему мы всё переписали с нуля +17

09:20

Тестируем плату RF Demo Kit for NanoVNA-F +17

03:03

Библиотека Python для доступа к данным ЦБ: cbrapi +17

07:56

Женщина, изменившая наше представление о звёздах +16

08:05

Сложно о простом. Все, что бы вы хотели знать о SFP модулях. Часть 2. Оптические кабели +69

11:16

Камера, снимающая с частотой 2 000 000 000 кадров в секунду +50

10:01

Развёртывание своего облачного хранилища на VPS: Nextсloud и альтернативы +44

09:01

HTML и CSS антипаттерны +43

14:15

Я CSS-программист: «Магия» CSS или как превратить язык стилей в Тьюринг-полный ад +39

12:40

Когда-то вас было трое, а потом драйв кончился… Опыт проб и ошибок в мотивации команды от хэда разработки +35

09:54

Что такое веб-сервер в Node.js и как его запустить на удаленном сервере +35

07:01

Почтовый Шарпей: как мы приручили 700+ шардов PostgreSQL +34

13:01

Мониторинг изменений на сайтах +27

13:39

Психологическая безопасность в IT: почему молчание — это проблема для каждого из нас +23

13:39

Психологическая безопасность в IT: почему молчание — это проблема для каждого из нас +23

13:28

ТОП-10 малоизвестных AI-сервисов, которые удивляют возможностями +23

07:14

ML глазами практика и препода. Часть 2. Границы роста и цена энергии +22

07:14

ML глазами практика и препода. Часть 2. Границы роста и цена энергии +22

09:02

5 распространенных ошибок, которые допускают пользователи NAS +21

12:18

Почему управление ИТ-инфраструктурой становится только сложнее и что с этим делать? +20

09:32

Оптика в техническом зрении. Лекция 3: Диафрагмы и виньетирование +20

09:08

Как я чуть не положил домен заказчика ZeroLogon’ом, или почему некоторые пентестеры опаснее хакеров +20

08:16

Текучка, выгорание и «мусорное спасибо»: как аутентичное признание экономит компании деньги +20

13:33

Из чего удобно делать кубиты. Искусственные атомы для квантовых вычислений +18

ОБСУЖДАЕМОЕ

  • Текучка, выгорание и «мусорное спасибо»: как аутентичное признание экономит компании деньги +20

    • 81   34000

    Почему я отказался от ORM в пользу чистого SQL +28

    • 52   8100

    Вайбкодинг становится менее доступным: OpenAI закручивает гайки -3

    • 49   13000

    VPN для админа, а не админ для VPN: Как мы убили OpenVPN и построили всё на WireGuard +11

    • 46   11000

    Программирование на русском языке -1

    • 45   3800

    Реставрация, которая меня сломала: Почему убрать смех из Скуби-Ду сложнее, чем сделать ремастер Тома и Джерри в 2к +52

    • 43   4900

    Эмуляция «тетриса» Apollo из 90-х и запуск кода на оригинальном железе +86

    • 41   4500

    5 распространенных ошибок, которые допускают пользователи NAS +21

    • 40   8900

    Почему операционный усилитель — плохой компаратор +32

    • 38   5900

    Перед вами первый «торговый автомат» по продаже крепкого алкоголя. Вы не поверите, но ему уже почти три века +36

    • 35   5600

    Как изготовить корпус из листового металла +39

    • 35   8700

    Психологическая безопасность в IT: почему молчание — это проблема для каждого из нас +23

    • 33   22000

    Психологическая безопасность в IT: почему молчание — это проблема для каждого из нас +23

    • 33   22000

    Виртуализируем роутер в Proxmox +11

    • 30   9100

    HTML и CSS антипаттерны +43

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