The digest of interesting news and materials from the world of PHP No. 45 (July 20 - August 3, 2014)
We offer to your attention another selection with links to news and materials.
Enjoy reading! ')
News and Releases
PHP Specification - Despite its popularity and already a solid age, PHP has never had a formal specification. But fortunately, times are changing and the HHVM team has presented to the public the draft PHP specification . The document is based on PHP 5.6 syntax and does not include a SPL description. Now subsequent versions of the interpreter, PHP-NG, as well as alternative implementations like HHVM can provide full compatibility. The specification itself will become an integral part of the language development process. Not without a little criticism .
The next PHP version will be called PHP 7 - Voting on the controversial issue ended with a result of 24 against 58. Some people believe that PHP 7 can be confused with PH7 , an alternative implementation of the interpreter. And of course, a great post from Phill Sturgeon about the endless controversy that has now become history.
PHP 5.6.0RC3 - This is the third release candidate for the new version of PHP and another one is planned. The final release should be expected by September.
PHP releases 5.4.31 and 5.5.15 - Updates on current branches.
RFC: Abstract Syntax Tree - Another massive offer from Nikita Popov. It is proposed to use an abstract syntax tree as an intermediate structure during the compilation process. Such a solution will, on the one hand, make the parser and compiler more comprehensible and easy to maintain, and on the other hand, will make it possible to implement previously impossible syntaxes, such as [$a, $b, $c] = $array instead of list() . As for performance, this solution is slightly faster, but will require more memory.
Instruments
Purl - A popular library for working with object-style URLs.
PHP PhantomJS - A wrapper library for convenient work with PhantomJS . Allows you to receive information about the page, JavaScript errors, set the size of the "screen", take pictures of the page and more.
libdomain - A set of PHP classes and traits to facilitate development in the style of DDD.
phpIO - Convenient library for working with files in PHP.
bottomline - A set of useful features for every day.
StaticReview - An extensible framework for creating hooks for version control systems.
phpMorphy - Morphological analyzer with support for Russian, English and other languages.
PHP OTP - Library for generating one-time passwords using TOTP and HOTP algorithms. Compatible with Google Authenticator.
Study materials
PHP and MySQL interaction, mysqlnd - Available since PHP5.3, the mysqlnd extension is not the most famous part of PHP. However, it is indispensable if your system relies heavily on MySQL. In a post about what mysqlnd is and how to use it.
Building a Better PHP with HHVM and Hack , 2 , 3 , 4 , 5 - A series of tutorials on the use of HHVM and Hack. The last part is about static analysis capabilities and command line tools.