PHP Digest number 139 (September 3 - 17, 2018)

Fresh selection with links to news and materials. In the release: PHP 7.3 RC 1, PhpStorm 2018.3 EAP, Laravel 5.7 and other releases, HHVM stops supporting PHP, typed properties in PHP, a portion of useful tools, video reports, and much more.
Enjoy reading!
News and Releases
- PHP 7.3 RC 1 - The release candidate cycle for the 7.3 branch has started. Expected total at least 6 issues for stabilization. In the meantime, you can read
what's new in PHP 7.3 .
- PHP 7.2.10
- PHP 7.1.22
- PHP 7.0.32
- PHP 5.6.38
- HHVM will stop supporting PHP - The release of HHVM v3.30, which is scheduled for December, will be the latest version with PHP support. Projects are recommended to be transferred either completely to Hack, or to PHP 7. The news was expected, they were warned about this a year ago , but popular frameworks and projects refused to support HHVM even earlier. Thanks to the HHVM team for pushing PHP to develop, good luck!
- PHP-FIG news over the summer - PSR-17 HTTP Factories has been adopted , PSR-18 HTTP Client specification is reviewed, a draft PSR-14 Event Dispatcher is published and actively discussed .
- PhpStorm 2018.3 EAP - PhpStorm early access program has been launched , thanks to which you can use new versions of IDE for free. Among the innovations already implemented:
• Support for PHP-CS-Fixer allows not only highlighting, but also correcting standards errors
• Quick search for variables during debugging
• Ctrl + Dot auto-completion
• Redesigned classes / files search dialog
• DQL support
and other improvements.
Php internals
- [RFC] Typed Properties 2.0 - Started voting on adding typed properties. The community supported the proposal almost unanimously, which means that in the next version we will see a significant improvement in PHP.
classUser{ public int $id; public string $name; // ... }
Instruments
- thecodingmachine / safe - Wrappers are implemented in the library over standard PHP functions, so that they throw exceptions instead of returns
false
. More in the post . - rambler-digital-solutions / hydrogen - Faster and more convenient level of abstraction for Doctrine ORM.
- theorchard / monolog-cascade - An extension for Monolog allows you to configure multiple handlers in a single file.
- renatomefi / php-fpm-healthcheck - Shell script to check php-fpm status. It can be useful when working with Docker and Kubernetes.
- docteurklein / json-chunks - JSON stream coding on the fly using generators. Alternative to violet-php / streaming-json-encoder
- thecodingmachine / phpstan-strict-rules - Additional rules for the PHPStan static analyzer .
- wbars / PHPFoldings - A plugin for PhpStorm that allows you to "collapse" language constructs by making the code cleaner: getters / setters, lambdas,
$this->
and more.Hidden text
Study materials
Symfony
- symfony / panther - Introduced new symfony component for E2E testing based on ChromeDriver. Analogue of Laravel Dusk and AcceptenceTests in Codeception.
- Symfony Week # 611 (September 10-16, 2018) , # 610 (September 3-9, 2018)
- 4 ways to add a global option or argument to the Symfony Console application
- Writing a one-page application on symfony 4, Vue.js, Vue Router, Vuex
Yii
- forum.yiiframework.com - New forum on the basis of Yii Discourse.
Laravel
- Laravel 5.7 - New resource folder structure, improved error messages, added integration with Symfony Dump Server , features for testing artisan-commands, and other improvements .
- saleem-hadad / larecipe - Beautiful markdown documentation for Laravel projects.
- marvinlabs / laravel-luhn - Validation of credit card numbers.
Async php
- recoilphp / react - Turns ReactPhp promises into cortutin.
- reactphp / cache - Asynchronous library for caching. About new library features in the post of the author.
CMS
- Drupal 8.6.0
- About Drupal 7, 8 and 9 - Drupal 7 and 8 will be supported until November 2021, while Symfony 3 is supported. Drupal 9 will be released in 2020.
Created by ClassicPress , fork WordPress with a classic web-editor
- WordBits.io - An interesting project that offers sharing of WordPress snippets with the ability to download them as ready-made plugins.
- Magento Tech Digest # 30: Aug 27 - Sept 03, 2018
- Several cases when the domain model can be reused
- Why should classes be declared final by default?
- 5 tips for working with open source PHP projects
- Uploading large files to PHP with the ability to stop / resume using the tus.io protocol and ankitpokhrel / tus-php
Arguments of functions as bit constants in PHP
PHP extension and Kotlin Native. Part three, probably final
How I fought theft ... with php
Let's look under the hood Doctrine 2 - Doctrine 2 architecture analysis and usage examples.
How to make friends with PHPstorm, xDebug and remote branches collected through Docker?
- Export data from the database to the custom format in JetBrains IDE
Audio and video
Five minutes of PHP pleases with fresh issues: # 37 - DevOps in a small business? , # 36 - What's new in PHP 7.3? - Thank you, @PetrMyazin !
Basics of automated testing in PHP from Davert .
Video Recordings with PHP Odessa Conf 2018
PHP Roundtable # 77: Preparing for an Interview
Entertaining
- phptestquestions.com - Test to test PHP knowledge.
Thanks for attention!
If you notice an error or inaccuracy - please inform the PM .
Write questions and suggestions by mail or twitter .
Send link
Search links for all digests
← Previous release: PHP Digest number 138