- PVSM.RU - https://www.pvsm.ru -

PHP-Дайджест № 140 (17 – 30 сентября 2018)

PHP-Дайджест № 140 (17 – 30 сентября 2018) - 1

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.3 RC2, Codeception 2.5 и другие релизы, типизированные свойства в PHP 7.4, концепт предзагрузки кода от Дмитрия Стогова, порция полезных инструментов, и многое другое.
Приятного чтения!

PHP-Дайджест № 140 (17 – 30 сентября 2018) - 2 Новости и релизы

PHP-Дайджест № 140 (17 – 30 сентября 2018) - 3 PHP Internals

  • [RFC] Typed Properties 2.0 [12] — Предложение по типизированным свойства принято практически единогласно: 70 против 1! Типизированные свойства будут добавлены в PHP 7.4.
    Скрытый текст

    class Example {
        // All types with the exception of "void" and "callable" are supported
        public int $scalarType;
        protected Type $type;
        private ?Type $nullableType;
     
        // Types are also legal on static properties
        public static iterable $staticProp;
     
        // Types can also be used with the "var" notation
        var bool $flag;
     
        // Typed properties may have default values (more below)
        public string $str = "foo";
        public ?string $nullableStr = null;
     
        // The type applies to all properties in one declaration
        public float $x, $y;
        // equivalent to:
        public float $x;
        public float $y;
    }
    
  • [PR] An attempt to implement «preloading» ability [13] — Дмитрий Стогов главный автор проекта PHPNG, который стал базой для PHP 7. На этот раз Дмитрий представил концепт, который позволяет приложениям предварительно загружать код еще до того как PHP обработает HTTP-запрос.
    Также Дмитрий работает над реализацией JIT в PHP [14], которая ожидается в PHP 8 [15].

PHP-Дайджест № 140 (17 – 30 сентября 2018) - 4 Инструменты

  • spiral/roadrunner [16] — Высокопроизводительный сервер приложений, балансировщик нагрузки и менеджер процессов для PHP реализованный на Go. Добавлена поддержка HTTPS и HTTP/2 Push [17].
  • ankitpokhrel/tus-php [18] — Реализация сервера и клиента tus.io [19] открытого протокола возобновляемых загрузок файлов. Протокол используется в Vimeo [20], Cloudflare [21], и Git LFS [22].
  • TiBeN/CrontabManager [23] — Менеджер cron-задач.
  • paragonie/easydb [24] — Простая и удобная обертка над PDO. Доступно кэширование подготовленных запросов paragonie/easydb-cache [25].
  • zendframework/zend-diactoros 2.0.0 [26] — Обновление популярной реализации PSR-7 и теперь еще PSR-17.
  • liuggio/fastest [27] — Простое решение для параллельного запуска тестов. Альтернатива более сложному paratestphp/paratest [28]
  • konsulting/porter [29] — Мультисайт окружение для локальной разработки на базе Docker.

PHP-Дайджест № 140 (17 – 30 сентября 2018) - 5 Материалы для обучения

PHP-Дайджест № 140 (17 – 30 сентября 2018) - 13 Аудио и видеоматериалы

PHP-Дайджест № 140 (17 – 30 сентября 2018) - 19 Занимательное

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

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

Прислать ссылку [73]
Поиск ссылок по всем дайджестам [74]
Предыдущий выпуск: PHP-Дайджест № 139 [75]

Автор: pronskiy

Источник [76]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/php-2/294413

Ссылки в тексте:

[1] PHP 7.3 RC2: http://news.php.net/php.internals/103273

[2] расписанию: https://wiki.php.net/todo/php73#timetable

[3] обзор нововведений PHP 7.3: https://www.phparch.com/2018/09/php-7-3-is-on-track/

[4] PhpStorm 2018.3 EAP: https://blog.jetbrains.com/phpstorm/2018/09/phpstorm-2018-3-eap-183-2635-12/

[5] о пересечении и объединении типов: https://medium.com/@ondrejmirtes/union-types-vs-intersection-types-fd44a8eacbb

[6] PHPStan: https://github.com/phpstan/phpstan

[7] Codeception 2.5: https://codeception.com/09-24-2018/codeception-2.5

[8] doctrine/mongodb-odm 2.0 Alpha 1: https://github.com/doctrine/mongodb-odm/blob/master/UPGRADE-2.0.md

[9] nikic/FastRoute: https://github.com/nikic/FastRoute/issues/173

[10] Fast request routing using regular expressions: http://nikic.github.io/2014/02/18/Fast-request-routing-using-regular-expressions.html

[11] Yandex PHP meetup, 18 октября 2018, Москва: https://events.yandex.ru/events/meetings/18-OCT-2018/

[12] [RFC] Typed Properties 2.0: https://wiki.php.net/rfc/typed_properties_v2

[13] [PR] An attempt to implement «preloading» ability: https://github.com/php/php-src/pull/3538

[14] реализацией JIT в PHP: https://github.com/zendtech/php-src/tree/jit-dynasm/ext/opcache/jit

[15] ожидается в PHP 8: https://habr.com/company/badoo/blog/415359/

[16] spiral/roadrunner: https://github.com/spiral/roadrunner

[17] поддержка HTTPS и HTTP/2 Push: https://github.com/spiral/roadrunner/wiki/HTTPS-and-HTTP2

[18] ankitpokhrel/tus-php: https://github.com/ankitpokhrel/tus-php

[19] tus.io: https://tus.io/

[20] Vimeo: https://medium.com/vimeo-engineering-blog/vimeo-is-adopting-tus-d5e999acd517

[21] Cloudflare: https://blog.cloudflare.com/how-cloudflare-streams/

[22] Git LFS: https://github.com/git-lfs/git-lfs/blob/master/docs/man/git-lfs-config.5.ronn#transfer-upload--download-settings

[23] TiBeN/CrontabManager: https://github.com/TiBeN/CrontabManager

[24] paragonie/easydb: https://github.com/paragonie/easydb

[25] paragonie/easydb-cache: https://github.com/paragonie/easydb-cache

[26] zendframework/zend-diactoros 2.0.0: https://github.com/zendframework/zend-diactoros/releases/2.0.0

[27] liuggio/fastest: https://github.com/liuggio/fastest

[28] paratestphp/paratest: https://github.com/paratestphp/paratest

[29] konsulting/porter: https://github.com/konsulting/porter

[30] KnpUniversity переименован в SymfonyCasts: https://symfony.com/blog/meet-our-new-official-family-member-symfonycasts

[31] enumag/no-thanks: https://github.com/enumag/no-thanks

[32] symfony/thanks: https://github.com/symfony/thanks

[33] #612 (17-23 сентября 2018): https://symfony.com/blog/a-week-of-symfony-612-17-23-september-2018

[34] #613 (24-30 сентября 2018): https://symfony.com/blog/a-week-of-symfony-613-24-30-september-2018

[35] Laravel Zero 5.7: https://medium.com/@nunomaduro/laravel-zero-5-7-is-now-available-4a263b119a8c

[36] Что такое APP_KEY и для чего он нужен: https://tighten.co/blog/app-key-and-you

[37] Пошаговое урководство по созданию первого приложения на Laravel: https://laravel-news.com/your-first-laravel-application

[38] Building LaraShoppe: https://www.youtube.com/watch?v=Sl533bI3qSs&feature=youtu.be

[39] antonioribeiro/health: https://github.com/antonioribeiro/health

[40] spatie/laravel-blade-x: https://github.com/spatie/laravel-blade-x

[41] railken/lara-eye: https://github.com/railken/lara-eye

[42] ReactPHP Tutorial #12: Routing: https://www.youtube.com/watch?v=qHV0GATf2zY&feature=youtu.be

[43] friends-of-reactphp/mysql 0.4: https://github.com/friends-of-reactphp/mysql

[44] посте: https://www.lueck.tv/2018/introducing-reactphp-mysql

[45] Magento Tech Digest #32: Sept 17 – 24, 2018: https://www.maxpronko.com/magento-tech-digest-32-september-17-24-2018/

[46] Массовая атака на сайты с необновлённым движком WordPress: http://www.opennet.ru/opennews/art.shtml?num=49318

[47] 7 советов по написанию исключений: https://www.tomasvotruba.cz/blog/2018/09/17/7-tips-to-write-exceptions-everyone-will-love/

[48] Не используйте библиотеки для моков: https://steemit.com/php/@crell/don-t-use-mocking-libraries

[49] Assertions and assertion libraries: https://matthiasnoback.nl/2018/09/assertions-and-assertion-libraries/

[50] Методы шифрования в PHP для паролей и других данных: https://deliciousbrains.com/php-encryption-methods/

[51] Slice Of PIE #00: https://paragonie.com/blog/2018/09/slice-pie-00

[52] Создаем простое PHP-приложение на Google App Engine: https://medium.com/@kerion7/creating-a-simple-php-application-on-google-app-engine-c75ce5150c30

[53] Конфигурация XDebug в Docker с помощью переменных окружения: https://bitpress.io/docker-php-flexible-xdebug-configuration/?ck_subscriber_id=172449570

[54] Нужно поднимать Kubernetes кластер, но я всего лишь программист кода. Выход есть: https://habr.com/post/423481/

[55] Хранение большого количества файлов: https://habr.com/post/423875/

[56] MVC + Scenario против Толстых Контроллеров: https://habr.com/post/424595/

[57] Пишем PSR-7 фреймворк: Консольные команды, базы данных и ресурсы: https://elisdn.ru/blog/124/psr7-console-db-assets

[58] Пятиминутка PHP Выпуск №39: https://5minphp.ru/episode39/

[59] Пятиминутка PHP Выпуск №38: https://5minphp.ru/episode38/

[60] PHP Roundtable #78: DocBlocks, Annotations, PSR-5: https://www.phproundtable.com/episode/docblocks-annotations-psr-5-and-the-like

[61] Список самых желаемых фич для PHP 8 из опроса в твиттере: https://blog.nikolaposa.in.rs/2018/09/23/community-driven-php8-wish-list/

[62] RFC: https://wiki.php.net/rfc/generics

[63] RFC: https://wiki.php.net/rfc/arrow_functions

[64] pthreads: https://github.com/krakjoe/pthreads

[65] nikic/scalar_objects: https://github.com/nikic/scalar_objects

[66] RemotePHP.io: https://remotephp.io/

[67] https://t.co/DWHmT6r6E3: https://t.co/DWHmT6r6E3

[68] pic.twitter.com/Qp5tun3CZh: https://t.co/Qp5tun3CZh

[69] September 26, 2018: https://twitter.com/svblxyz/status/1045013939904532482?ref_src=twsrc%5Etfw

[70] личку: https://habrahabr.ru/conversations/pronskiy/

[71] почту: mailto:roman@pronskiy.com

[72] твиттер: https://twitter.com/pronskiy

[73] Прислать ссылку: https://bit.ly/php-digest-add-link

[74] Поиск ссылок по всем дайджестам: https://pronskiy.com/php-digest/

[75] Предыдущий выпуск: PHP-Дайджест № 139: https://habr.com/company/zfort/blog/423491/

[76] Источник: https://habr.com/post/424949/?utm_campaign=424949