PHP-Дайджест № 83 – интересные новости, материалы и инструменты (27 марта – 10 апреля 2016)



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

    Приятного чтения!


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




    PHP


    • RFC: Typesafe callable — Фактически предлагается реализовать интерфейсы для анонимных функций. Альтернативный RFC Callable Interfaces.
      callable FilterCallable(string $input) : string;
      
      function foo(FilterCallable $filter) : string
      {
          return $filter('bar');
      }
       
      foo(function (string $foo) : string { return trim($foo); });
      

    • RFC Short List Syntax — Предлагается реализовать возможность использования квадратных скобок вместо конструкции list():
      <?php
       
      // Строки попарно эквивалентны
       
      list($a, $b, $c) = array(1, 2, 3);
      [$a, $b, $c] = [1, 2, 3];
       
      list("a" => $a, "b" => $b, "c" => $c) = array("a" => 1, "b" => 2, "c" => 3);
      ["a" => $a, "b" => $b, "c" => $c] = ["a" => 1, "b" => 2, "c" => 3];
       
      list($a, $b) = array($b, $a);
      [$a, $b] = [$b, $a];
      


    Инструменты


    • gabrielrcouto/php-gui — Инструмент позволяет создавать десктопные приложения с графическим интерфейсом на PHP без необходимости устанавливать дополнительные расширения.
    • Imangazaliev/DiDOM — Простая и быстрая библиотека для парсинга HTML. Сравнение с другими парсерами.
    • morozovsk/websocket — Простой WebSocket-сервер с поддержкой PHP 7 и интеграцией с Yii/Yii2. Прислал morozovsk.
    • FriendsOfPHP/Sismo — Сервер непрерывного тестирования. Туториал по использованию.
    • phpconsole/phpconsole — Инструмент отладки, позволяет отправлять и затем просматривать отладочную информацию на phpconsole.com.
    • azuyalabs/yasumi — Библиотека для расчета национальных праздников.
    • yuloh/expect — Альтернатива Unix-инструменту expect на чистом PHP.
    • versionpress/versionpress — Плагин для WordPress реализует систему контроля версий на основе Git. Позволяет контролировать практически любые изменения в контенте и инфраструктуре WordPress.
    • Corveda/PHPSandbox — Песочница для выполнения PHP, позволяет выполнять любой код, не допуская вызова потенциально опасных конструкций.


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




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




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

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

    Присылайте ссылки на интересные статьи или полезные инструменты, которых не было в PHP-Дайджестах, и ваше имя будет рядом с присланной ссылкой в выпуске.

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

    Zfort Group
    113,00
    Компания
    Поделиться публикацией

    Комментарии 11

      +3
      Что такое Humble Object и как он помогает сделать код более тестируемым?

      Там разве не на JavaScript примеры?

        +1
        Там даже теги на это намекают: JavaScript, Sinon, Testing
          0
          Виноват, спасибо за замечание! Убрал :-)
          +1
          Подскажите, а насколько код «Простой WebSocket-сервер» пригоден для прода?
          Вроде код слегка не причесан, проект с 2014 не особо развивался, в статьях на Хабре критика была заметна.
          С другой стороны он прост как тапок.
          Из минусов вижу только отсутствие пинг-понга и отсутствие альтернативы на случай если в пути что-то помешало (хоть аяксовую обертку).
          Пинг-понг в принципе можно и на высоком уровне сделать, как плюс может быть например убивание сессий с неактивными окнами.
          Аяксовую обертку тоже не сложно дописать. Но если там еще сюрпризы будут, то как-то страшновато.
          Я с вебсокетами на Вы, по принципу черного ящика…
            0
            «он прост как тапок» — это основной момент, он предназначен для снижения порога вхождения в вебсокеты для php-программиста.
            Да с 2014 он не особо развивался, добавить пинг-понг есть в планах, было исправлено немало багов и протестирована работа на php7.
            Я использую его в продакшене уже несколько лет, утечек памяти не было. Демки (чаты и игры) были запущены больше года и никаких проблем не наблюдалось.
            Всё время с его создания я думал, что поиграюсь и перейду на что-то более серьёзное, но мне его функционала достаточно, есть примеры по интеграции в мой любимый фреймворк, я знаю как его правильно готовить.
            Из альтернатив могу посоветовать http://socketo.me/ единственное не знаю на чём он работает внутри (socket_select, pecl/event or pecl/libevent) и какие соответственно имеет ограничения.
              +1
              Ну меня он как раз как «тапок» и интересует.
              Так то жирных вещах в проде живут монстрики на базе сокет.ио.
              Но на более-менее легких (да и просто на свежих проектах) хочется сокращать количество франкенштейнизма.
              Сейчас в пуле задач на не срочно есть чЯтик «чтобы было», т.е. хотим добавить в админке ЦМС чат между менеджерами/админами/пользователями. В некоторых проектах оно необходимо, в других — просто как фишка. Здесь вполне достаточно вебсокеты + воркараунд с «аякс раз в 5 сек».
              Вторая задача — обновить работу с графиками. Тут есть сомнения — аякс точно не устраивает по скоростному режиму, а городить мультипротокольные решения — проще остаться на сокет.ио. По крайней мере на живых проектах. А для новых? Для новых я пока в задумчивости — насколько оно существенно сейчас? Каков процент тех у кого оно не взлетит? Теоретически некоторой интерактивностью для части мобильной аудитории пожертвовать можно без проблем, там и так задержек хватает, мобильная работа это запасное решение, не основное.

              В общем в задумчивости я. С одной стороны — тапок, и уменьшение лишних технологий.
              С другой стороны совместимость… В общем классическая проблема на подобии «когда прекращать поддержку ие6/7/8?» :)

              ПС: За комментарий благодарю в любом случае. Частично понимания больше стало. ЗА библиотеку вдвойне благодарность. Как минимум как шпаргалка по технологии полезна будет. Читать код всегда приятнее чем теоретические учебники.
            • НЛО прилетело и опубликовало эту надпись здесь
              +2
              Не знаю упоминалось ли уже, но на Gitter есть хороший русскоязычный (ну почти) PHP чат. Я когда-то искал и не мог найти даже русского PHP-шного IRC канала, а попался он. Хорошо бы было его чуток популяризировать в дайджесте:

              https://gitter.im/dev-ua/php

              P.S. если я слеп и все таки существуют иные чаты/IRC то буду очень признателен за линк
                +1
                Спасибо за материалы
                  0
                  > gabrielrcouto/php-gui

                  Никогда такого не было, и вот опять
                    0
                    идея может и неплоха, но дичайше устарела. Зачем рисовать интерфейс по кнопка и по координатам, если можно всё делать через HTML/CSS и рендерить хромиумом, как это делает электрон. Так что, увы, не взлетит

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

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