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



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


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



    PHP


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

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

    Инструменты



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



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



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

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

    Прислать ссылку
    Быстрый поиск по всем дайджестам
    Предыдущий выпуск: PHP-Дайджест № 106
    Метки:
    Zfort Group 405,09
    Компания
    Поделиться публикацией
    Комментарии 17
    • 0
      Может кто-нибудь пояснить по поводу сериализации? Проблема с безопасностью-то понятна, но зачем мне массив в результате сериализации?
      • +2
        Чтобы убрать вызовы serialize/deserialize из методов и избавиться от проблем очерёдности этих вызовов. Вы просто возвращаете массив данных, которые должны попасть в итоговую строку, а потом на вход принимаете такой же массив для наполнения объекта.
      • 0
        По статье о замене ассоциативных массивов объектами: в типовом веб приложении, где извлекаем данные из базы и по цепочке методов передаём шаблонизатору, реальная экономия памяти составляет до 40%
        • 0
          В какой версии PHP?
          • 0
            Давно тестировал, в 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
            — по сути массив ссылок передаётся и всё

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

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

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

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

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


          Newest PHP (7.0.18 / 7.1.4) has new “feature” (https://bugs.php.net/bug.php?id=74216) that breaks predis
          • +1
            Кто-нибудь spiral успел попробовать? Как ощущения?
            Неделю назад на него наткнулся, хотел использовать в будущем rad проекте вместо yii
            • +4

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

              • 0

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

              • +1
                Спасибо за полезную информацию! Статью «Построение гибких PHP приложений» перевел, https://habrahabr.ru/post/327746/
                • 0
                  pronskiy а вы случайно в телеграм не транслируете эти подборки?
                  • 0
                    Канал дайджеста сделал https://t.me/phpdigest но пока он пуст и никак не используется. А как вы это видите? Если что меня можно найти в телеграме https://t.me/prnsk
                    • +1
                      Сделал репост по каналам PHP — попробуем проинформировать о нем.
                      • 0
                        Супер, спасибо!
                        • +1
                          Было 8 подписчиков — ужо 44 :-)

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

                  Самое читаемое