PHP-Дайджест № 101 – интересные новости, материалы и инструменты (15 – 29 января 2017)



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

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




    PHP


    • RFC: Permit trailing whitespace in numeric strings — На данный момент PHP игнорирует пробельные символы в начале числовой строки, то есть " 123" и "123" эквивалентны. А вот если пробельные символы идут в конце, то такое число считается не валидным. Предлагается исправить несправедливость.
    • RFC: Disallow Multiple Constructor Calls — Предлагается запретить множественный вызов конструктора.
    • RFC: Deprecate and Remove Bareword (Unquoted) Strings — В текущих версиях PHP использование строки без кавычек бросает ошибку уровня E_NOTICE. Предлагается в ближайшей версии бросать E_WARNING, а затем и вовсе ParseError.
    • RFC: Deprecations for PHP 7.2 — Прошло голосование по списку функциональностей на объявление устаревшими: __autoload, $php_errormsg, create_function(), mbstring.func_overload, (unset) cast, parse_str() без второго аргумента, gmp_random(), each(), assert() со строковым аргументом, аргумент $errcontext в обработчике ошибок.


    Инструменты


    • corpsee/php-censor — CI-сервер на PHP. Форк практически заброшенного PHPCI. Прислал Corpsee.
    • denisyukphp/tmpfile — Класс для работы с временным файлом как альтернатива стандартной функции tmpfile(). Прислал Александр Денисюк. habr Хабрапост в поддержку.
    • Microsoft/tolerant-php-parser — На данный момент экспериментальный парсер PHP на PHP от Microsoft. Предназначен для использования в IDE, то есть где код заведомо не полный, а значит парсер должен быть устойчив к ошибкам.
    • php-fig/http-message-util — Пара интерфейсов с набором констант HTTP статус кодов и HTTP-методов.
    • php-enqueue/enqueue-dev — Компоненты для работы с очередями сообщений. Поддерживаются транспорты Amqp, Stomp, файловая система.
    • shadowhand/latitude — SQL query builder.
    • ezimuel/PHP-Secure-Session — Шифрование для нативных сессий.
    • jmolivas/phpqa — CLI-инструмент, который объединяет в себе популярные решения проверки качества кода для удобства использования.
    • digitalkaoz/php-ipfs — Клиент для IPFS.
    • flyimg.io — Приложение для изменения размеров, обрезки и сжатия изображений на лету.
    • cweagans/composer-patches — Плагин для Cоmposer, который позволяет применять патчи к зависимостям.
    • asyncphp/paper — Асинхронный конвертер HTML в PDF.


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




    Аудио и видеоматериалы




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




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

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

    Прислать ссылку
    Быстрый поиск по всем дайджестам
    Предыдущий выпуск: PHP-Дайджест № 100
    Zfort Group 342,74
    Компания
    Поделиться публикацией
    Комментарии 12
    • +3
      Читаю и жду с удовольствием. Спасибо, продолжайте, пожалуйста!
      • +3
        Спасибо за подборку
        • +1
          Формы в терминале огонь. Спасибо!
          • +1
            Спасибо! Очень много занимательного!
            • 0
              Чем предлагают заменить each()? Чем он вообще им помешал? Простая удобная функция для своих задач.
              • +1
                Можете привести пример где её использовали? За 7+ лет ни разу не применял и даже не догадывался о её существовании.
                • 0
                  Думаю предлагают заменить конструкцией foreach
                  • 0
                    Вряд ли, это сильно не одно и то же.
                    • 0
                      Да foreach более универсальный, и это его плюс
                      • 0
                        Плюс скорость. Конечно это было во времена 5.2, но не думаю что сильно что-то изменилось.
                        http://php.net/manual/ru/function.each.php#75692
                        • +1
                          Проверил на 7.0, результаты:
                          time for foreach = 0.11075496673584.
                          time list each = 1.5992379188538.

                          Скорее всего foreach оптимизировали со временем, each же поддерживался по остаточному принципу
                          • 0
                            Тут есть ещё фактор что foreach это конструкция языка, не функция. А вот each это функция. В том числе поэтому foreach более оптимально работает.

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

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