Developpez.com

Le Club des Développeurs et IT Pro

PHP 7 sera la prochaine version majeure de PHP

Il n'y aura pas une version 6 pour le langage de programmation

Le 2014-08-01 13:41:01, par Hinault Romaric, Responsable .NET
PHP passera directement de la version 5.x à la version 7.x, sans passer par une version 6.x. C’est ce qui ressort d’un vote dans une RFC (requests for comments) sur le Wiki du langage de programmation Web.

Après un long processus de votes, sujet à des discordes, qui avait débuté le 20 juillet 2014, avant d’être subitement annulé pour des raisons qui ne sont pas claires, les responsables du projet ont adopté PHP 7 comme la prochaine version majeure du langage. Le second vote s’est déroulé entre le 23 et le 30 juillet, et 58 voix contre 24 ont été favorables à l’utilisation de « PHP 7 » à la place de « PHP 6 ».

Pourquoi avoir opté pour PHP 7 alors que logiquement, la prochaine version du langage devrait être baptisée « PHP 6 », puisqu’on est actuellement à la version « 5.x » ?

Retour en 2005, les développeurs de PHP se lancent dans la création d’une nouvelle version majeure du langage, qui allait avoir pour nom « PHP 6 » et devait avoir comme nouveauté majeure l’intégration d’Unicode (standard informatique qui permet des échanges de textes dans différentes langues, à un niveau mondial). Face à d’énormes difficultés rencontrées dans la mise en œuvre d’Unicode, le projet est abandonné en 2010, et les autres nouveautés et améliorations de PHP prévues pour cette version sont intégrées dans « PHP 5.3 » et « PHP 5.4 ».

C’est alors que nait une certaine confusion. Alors que PHP 6 ne voit pas le jour, plusieurs ressources en ligne font référence à PHP 6 pour évoquer ses fonctionnalités, y compris des livres. La prochaine version de PHP étant construite sur de nouvelles bases, il était important pour les développeurs du projet de se distancer de la version 6, qui avait déjà été beaucoup médiatisée.

Plusieurs raisons ont été évoquées pour justifier ces changements, dont voici l’une : « La version 6 est généralement associée à l’échec dans le monde des langages dynamiques. PHP 6 a été un échec, Perl 6 a été un échec. Il est également associé à l’échec en dehors du monde des langages dynamiques : MySQL 6 existait, mais n’a jamais été publié. La perception de la version 6 comme un échec – pas comme une superstition, mais un fait réel mondial (similaire à l’association du mot « Vista » à l’échec) – reflète mal cette version de PHP ». Il faut noter que Windows Vista était la version 6 de Windows.

Les défenseurs de la version 6, quant à eux, soutenaient que les gens allaient se poser la question de savoir comment PHP était passé subitement à la version 7, sans avoir une version 6.

Le débat est désormais clos et a fait place aux discussions sur les fonctionnalités qui seront intégrées à cette prochaine version majeure de PHP, qui succédera à PHP 5.6.

Parmi celles-ci, pourrait figurer « PHP Next Generation », un projet dont le but, est de procéder à une refonte, à l’optimisation et au nettoyage du code de base de PHP pour le rendre plus efficace et permettre d’avoir recours à un compilateur JIT. La refactorisation du code de PHP dans le cadre de ce projet avait déjà entrainé une augmentation des performances d’applications comme Wordpress 3.6 de 20 % et Drupal 6.1 de 11,7 %.

Source : site du projet PHP

Et vous ?

Êtes-vous pour ou contre l’adoption du nom PHP 7 pour la prochaine version majeure de PHP ? Pourquoi ?

Le chiffre 6 est-il également synonyme d’échec pour vous ?
  Discussion forum
40 commentaires
  • Bovino
    Rédacteur
    Envoyé par Hinault Romaric
    Le chiffre 6 est-il également synonyme d’échec pour vous ?
    Non : IE6 était un régal !
    Pendant des années, j'ai pu glander en expliquant que je déboguais pour IE6 et tout le monde me croyait !
  • Jarodd
    Membre expérimenté
    Dans les optimisations prévues, j'espère qu'ils feront un nettoyage dans le nom des fonctions, et à suivre une convention claire sur leur nommage :
    - gettype/get_class
    - bin2hex/strtotime
    - htmlentities/html_entity_decode

    Ainsi que sur l'ordre des arguments :
    array_filter($input, $callback) / array_map($callback, $input)
    strpos($haystack, $needle) / array_search($needle, $haystack)

    Et j'ai la flemme d'en relever d'autres...
  • Alanis
    Membre habitué
    Jamais eut de soucis avec Java 6
  • Grabeuh
    Membre éclairé
    Windows Vista embarquait justement la version 6.0 du noyau NT...
    Coïncidence ? Je ne pense pas...
  • grunk
    Modérateur
    C'est une bonne chose que de passer à la version 7 ça évitera pas mal de confusion avec les ressources (livre , sites ...) existant sur PHP 6 qui sont nombreuses malgré l'avortement de la version.
  • satenske
    Membre confirmé
    Et Java6, l'exception qui confirme la règle ? :-)

    Mais je trouve qu'abandonner PHP 6 n'est pas plus mal : il n'y aura plus de confusion possible.
  • SylvainPV
    Rédacteur/Modérateur
    C'est vrai ça, il y a de quoi devenir superstitieux Internet Explorer 6, Vista avec NT6.0 et aussi le 6ème de la série des Windows "connus" (3.1, 95, 98, ME, XP, Vista). Ça doit être pour ça qu'ils ont arrêté de numéroter HTML depuis HTML5.
  • Gecko
    Membre éprouvé
    Je trouve le choix de PHP 7 cohérent.

    Pour cette version j'espère qu'ils vont virer les fioritures qui font perdre un temps fou et se rapprocher de Python qui a une syntaxe vraiment épurée. Comme dit plus haut une normalisation des noms des classes, fonctions, mots reservés et de l'ordre des arguments serait vraiment tip top.
  • Porkepix
    Membre habitué
    Outre la cohérence des nommages de fonctions, paramètres etc. soulevés dans les posts précédents, j'espère que le passage à Unicode n'a pas été abandonné et que ce sera fait. Ça devrait aujourd'hui être une norme.
    Enfin bon, pour ma part j'appréciais pas mal PHP avant…avant de découvrir Python, notamment beaucoup plus cohérent sur ces points.
  • IronBibs
    Membre habitué
    Au final avec ses déboires de version 5.3/5.4, cela parait tellement logique de passer à la version 7 pour que cela soit propre dans les esprits.
    Après je peux comprendre qu'il y en a qui ont ce besoin de râler pour tout... C'est pas nouveau