
PHP Digest No. 121 (November 20 - December 10, 2017)

Fresh selection with links to news and materials. In release: PHP 7.2.0, Symfony 4 and other releases, the offer from PHP Internals, materials on frameworks, asynchronous PHP, the portion of useful tools, and many other things. Enjoy reading!
News and Releases
- PHP 7.2.0 - The long-awaited major PHP release is delivered on schedule. 236 commiters and 4456 commits. Thanks to all contributors and release managers for the work done! The latest version of the interpreter has improved performance, as well as a number of other improvements:
- New type object
- Sodium core cryptographic library
- Password hashing with Argon2
- Emulation of prepared expressions
- Parameter Type Extension
- Many features deprecated
→ A complete list of changes.
More on how to install PHP 7.2 on various OSs. - Symfony 4 - Not just an update, but a rethought framework.
- Unattended package installation using Symfony Flex
- Auto-register and auto-connect services
- Microframework out of the box: Symfony 4 application is 70% less than Symfony 3
- Webpack Encore for working with the frontend
- And many other improvements
Available PhpStorm 2017.3
- PSR-15 Server Request Handlers - The request handler and middleware standard has moved into the review phase.
- PHP 7.0.26
- PHP 7.1.12
- Symfony Moscow Meetup # 14 - To be held on December 14 at Rambler & Co
PHP internals
- RFC: Explicit call-site pass-by-reference - Great offer from Nikita Popov. At the moment, the fact that the function takes an argument by reference is indicated only in the definition of the function itself:
function inc(&$num) { $num++; } $i = 0; inc($i); var_dump($i); // int(1)
It is proposed to make it possible to explicitly indicate the transfer by reference. Thus warning the developer that the passed variable will change:function inc(&$num) { $num++; } $i = 0; inc(&$i); var_dump($i); // int(1)
Instruments
- yiisoft / di - An experimental framework-independent and PSR-11 compatible DI container and injector from the Yii team.
- PHPStan 0.9 - Great static analyzer for PHP. Read more about release 0.9 in the author's post . Online sandbox for code verification.
- Indatus / trucker - A package for using remote API resources (usually RESTful) as ActiveResource-style models.
- coraxster / flysystem-owncloud , coraxster / flysystem-aws-s3-v3-minio - A couple of providers for Flysystem: Owncloud and Minio, respectively. Submitted by corax .
- acelot / automapper - Automapper data for PHP 7. Submitted by eee .
- javibravo / simpleue - Simple queue and workers with support for AWS SQS, Redis, Beanstalkd as a backend.
- rectorphp / rector - A tool to update your AST applications.
- apioo / fusio - An open API management platform in PHP.
- TinyLara / TinyLara - Simple microframework.
- arvenil / ninja-mutex - Mutex implementation for PHP with support for various adapters (flock, memcache, mysql, redis, ...).
Materials
Symfony
- Symfony 3.4.0 - List of new features.
Future Symfony 4.0 Release and Project Using Symfony Flex
- Symfony 4 Review
- Add GraphQL API to Symfony Flex Application
Namespaces and the organization of business logic services in Symfony
- krlove / async-service-call-bundle - The bundle allows you to call application service methods asynchronously in the background php process. Submitted by Andrey Mishchenko
- wouterj / WouterJEloquentBundle - Integrates Eloquent ORM from Laravel to Symfony
- Symfony Week # 569 (November 20-26, 2017)
- Symfony Week # 570 (November 27 - December 3, 2017)
- Symfony Week # 571 (December 4-10, 2017)
Yii
- Yii PHP Framework adopted AMQP Interop - Added support for queue-interop / amqp-interop to the official Yii component for working with yiisoft / yii2-queue queues , which means automatic support for many AMPQ packages. The first step towards standardizing work with queues between frameworks.
Pavel Klimov: “F'Yii'osophy”
Pavel Klimov: “Yii: migrations and installations”
Laravel
- SQL query to Laravel Query Builder syntax
- jarektkaczyk / eloquence - Useful extensions for Eloquent ORM.
Creating your own PHP functions in a Laravel project
Zend
Async php
Roman Pronsky: “Asynchronous PHP” - Review report from me.
- ReactPHP PromiseStream: About Converting a Promise to a Stream and vice versa
- Creating a client for Memcached on ReactPHP: unit testing of promises
- Extending child processes for ReactPHP
- Introduction to ReactPHP Promises
CMS
- WordPress Month: November 2017
- Magento Tech Digest # 7 - News, Tutorials and Tools (November 14 - December 4, 2017)
- Find the vulnerability in PHP code - Every day in December, a small piece of code is published with the vulnerability and a detailed explanation.
- How to read large files in PHP
- Tuning PHP-FPM using 'pm static'
- Optimizing the markdown parser using Blackfire.io
Opensource helps us build and live: interview of Yii Framework developer Alexander Makarov
Selenium Manager: A Single Interface History
The architecture of the service for collecting and classifying housing ads from Vkontakte
XML string constructor from a PHP array
Another Telegram bot for video surveillance
Regular expressions for the smallest
Entertaining
- Migrating from PHP to GO ... and vice versa
- Good illustration of the KISS principle
Thanks for attention!
If you notice a mistake or inaccuracy - please inform me in PM .
Questions and suggestions write to mail or twitter .
Send link
Search links for all digests
← Previous release: PHP Digest No. 120