PHP 7 release – is major syntax changes?
Are you as shocked with the release of php 7 after the 5.x(5.6) version?
Here is story – Andrei Zimievski has initiated a project to implement the native Unicode support throughout the PHP. It was planned to release with PHP6 along with other new features. However this development is Abandoned. so there was an intense debate about the name of the next major version.
Finally they decided to vote and came with name PHP 7. You can see arguments and voting in document are available – Name of Next Release of PHP
The whole feature set of PHP 7 is not defined. We can see top major changes.
Top Features for PHP 7
1) Huge Performance Improvements –
phpng (PHP next generation) – Main goal to improve performance that could at least match what Facebook HHVM provides.
Zeev Suraski written article on which he clearly take HHVM as competitor.
I believe it would be good enough to beat the speed of HHVM.
2) JIT Engine –
According to Dmitry Stogov of Zend, the development of PHPNG was started with the motivation to research the implementation of a JIT engine for the Zend Engine based PHP.
A JIT engine can dynamically compile Zend opcodes into native machine code that eventually would make the code run faster next time it is run.
3) AST (Abstract Syntax Tree) –
Another change that boost up the performance . AST is intermediary step for the PHP compilation process.
An AST would provide several advantages that he described in his proposals, including the potential for more optimizations that would make PHP run even faster.
4) Asynchronous Programming –
Facebook hack already implemented asynchronous programming which push PHP core development team to integrate asynchronous Programming feature in PHP 7.
An event loop is part of the code that takes care of handling events related with I/O operations and other asynchronous tasks that may be going on in parallel, like accesses to files, network, databases, timers, etc..
In simpler terms, this would allow future PHP versions to easily implement support to the execution of parallel tasks within the same request, thus pushing PHP performance improvement potential to a totally different level.
5) Standalone Multi-threading Web Server –
This is what PHP make more scalable. PHP can already be run from multi-threaded Web servers like ngynx, lighttpd or even Apache in worker mode, however that is not the same as having PHP run on its own multi-threading Web server.
A multi-threading Web server can handle many simultaneous requests using a single memory pool, thus avoiding the memory waste that happens when you run PHP as FastCGI or in Apache pre-fork mode.
Despite running PHP as a standalone multi-threading Web server is not yet in the plans for PHP 7, it is certainly something good to have, at least for PHP 8.
When will be the PHP 7 Release Date?
Different people estimate it will take between 1 to 3 years. A reasonable guess is to expect a final PHP 7 release some time in 2016, although it is not impossible to see early alpha versions still in mid October 2015.
We should thank Facebook to make the PHP core developers wake up and move faster to integrate these great features from HHVM and the Hack Language. PHP 7 version will be certainly exciting. Keep up with all the CodePlateau social accounts to stay in touch with the latest news about Web Development.