Lors d’une conférence O'Reilly Fluent à San Francisco, Rasmus Lerdorf, le créateur du langage de programmation PHP (Hypertext Preprocessor) principalement utilisé pour le web (près de 81% des sites web), a indiqué que la version 7 verra une amélioration des performances de 100%. Pour être plus précis, M. Lerdorf a noté que ce gain très significatif a été constaté dans la plupart des applications utilisées dans le « monde réel ».
Basée sur la branche PHPNG (pour PHP New Generation) du langage, la préversion est attendue en juin et la version finale est prévue pour octobre prochain. Le fork PHPNG, présenté en mai 2014, repose sur une meilleure allocation de la mémoire vive, des API nettoyées et un changement des structures internes de données. Des contributeurs comme Zeev Suraski, CTO et cofondateur de la start-up Zend à l’origine de PHPNG, ont également constaté les performances de PHPNG (25 à 70%) par rapport à PHP 5.6.
Face à PHP 5.6, la version 7 - sur base PHPNG - montre ses muscles.
Meilleure utilisation des ressources serveurs
PHP 7 propose donc des améliorations du moteur, une meilleure utilisation de la mémoire et un stockage local natif des threads. En fait, PHP 7 permet d’utiliser des ressources serveurs plus modestes et donc de faire un choix plus respectueux de l'environnement, a souligné Rasmus Lerdorf. « Juste en termes de Green IT, PHP 7 devrait être une mise à jour essentielle pour tous ceux qui utilisent un grand nombre de serveurs. »
Cette version 7 est basée sur un arbre de syntaxe abstrait, qui devrait être utile pour quiconque utilise des outils de construction add-on ou effectue une analyse statique, selon M. Lerdorf. Le typage strict est également de la partie, avec la possibilité de l'activer ou pas : « Fondamentalement, le typage strict une fois activé est super, super strict. Le type doit forcément correspondre ».
Rasmus Lerdorf a également averti que cette mise à niveau ne supporte plus certaines fonctions de PHP 4: « Si votre code a plus de 12 ans, il plantera avec PHP 7. S’il fonctionne sous PHP 5, cela devrait bien se passer. »