Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

PHP 7.1.0 disponible


Sujet :

Langage PHP

  1. #1
    Expert éminent sénior
    PHP 7.1.0 disponible
    PHP 7 améliore les performances des applications avec un gain de l’ordre de 100 %
    son lancement est prévu pour octobre 2015

    La O’Reilly Fluent Conference qui se déroule du 20 au 22 avril à San Fransico a été l’occasion de plusieurs annonces importantes portant sur le domaine des technologies web, ainsi si Brendan Eich s’est longuement entretenu sur le langage JavaScript et de sa spécification ECMAScript, du côté de PHP, on prépare la sortie de la nouvelle version de PHP : PHP 7.

    Pour rappel, PHP 7 succèdera à PHP 5.x après avoir officiellement été annoncé en aout 2014, suite à un long débat et un vote final qui avait pour but de décider de la nomenclature de la prochaine version et de la mise à l’écart du nom de code PHP 6, ce dernier étant associé à la version abandonnée largement connue du monde IT et qui avait pour objectif le support d’Unicode.

    Si PHP 7 est prévu pour juin dans sa version RC et octobre dans sa version finale, Rasmus Lerdorf fondateur et pionnier du langage de script a d’ores et déjà prévenu ses futurs utilisateurs, PHP 7 sera associé à rapidité, en effet cette nouvelle mouture affiche un gain en terme de performances de l’ordre de 100% sur la majorité des applications full-stack testées et qui sont généralement utilisées en production.

    Pour ce faire, PHP 7 reprend les bases de la branche phpng du langage, cette dernière étant le fruit du projet PHP next generation qui a pour but de développer une version plus propre et performante suite à la réfactoration du moteur Zend, mais PHP7 ne se cantonne pas seulement à phpng, car il embarque plusieurs améliorations dont une utilisation mémoire allégée, le stockage en local natif des threads, ce dernier point n’a pas manqué de faire réagir Lerdorf : « Juste pour être clair, PHP7 devrait être une mise à jour essentielle pour quiconque qui exécute un grand nombre de serveurs ».

    Plus encore, cette version est basée sur un arbre syntaxique abstrait ce qui est notable pour les développeurs d’add-on ou ceux qui conduisent une analyste statique. Le typage strict est aussi de la partie, avec la possibilité de les activer ou pas selon la volonté de l’utilisateur : « fondamentalement, le typage strict une fois activé est super, super strict. Le type doit forcément correspondre ».

    Enfin, Lerdorf a rappelé que cette nouvelle version déprécie de nombreuses fonctionnalités de PHP4 : « Il y a de fortes chances que votre code vieux de 12 ans plante sous PHP7. En revanche s’il fonctionne sous PHP5, alors il n’y pas d’inquiétude à se faire».

    Source : O’Reilly Fluent Conference

    Et vous ?
    Qu’en pensez-vous ?

  2. #2
    Inactif  
    Enfin, Lerdorf a rappelé que cette nouvelle version déprécie de nombreuses fonctionnalités de PHP4 : « Il y a de fortes chances que votre code vieux de 12 ans plante sous PHP7. En revanche s’il fonctionne sous PHP5, alors il n’y pas d’inquiétude à se faire».
    C'est ce que j'avais craint , que php7 ne soit pas rétro-compatible avec php5, sa me rassure du coup, je vais suivre sont conseil et no stesse.
    Mais je pense que je vais installer la version RC de juin, pour tester par curiosité.

    PHP4, qui l'utilise encore ?, il n'est plus supporté, n'a plus de maj de sécurité, donc je pense qui une entreprise a encore un intranet/site en php4, elle devrait sérieusement envisagée de migrer vers php7 directement.


    Encore une chose, depuis php5.5, il y'a eu aussi une hausse (minime) des performances, depuis que le code n'est plus compiler a chaque appel mais une seul fois si il n'est pas modifié, sa a l'air de rien, mais parfois c'est assez bluffant.

    Pour ce qui est du typage, je trouve que c'est sympa que sa reste optionnel, chacun est libre de faire comme il veut, surtout que sa pourrais devenir casse tête pour les formulaire si il fallait les typé par exemple, ou les get url.

  3. #3
    Membre expert
    Citation Envoyé par sazearte Voir le message
    PHP4, qui l'utilise encore ?, il n'est plus supporté, n'a plus de maj de sécurité, donc je pense qui une entreprise a encore un intranet/site en php4, elle devrait sérieusement envisagée de migrer vers php7 directement.
    J'ai migré quelques petits projets abandonnés en PHP4 vers PHP5.3, et certains fonctionnent si on ne fait pas afficher les warnings. Mais comme je suis en strict en dév, ce n'est pas possible chez moi. Il y en a encore plein... Le code PHP 4 est encore en très grande partie compatible avec 5.x, il est logique qu'avec PHP 7 qui marque en déprécié les constructeurs PHP 4 ça ne passe plus si on a eu la bonne idée de faire de l'objet.

  4. #4
    Membre régulier
    « fondamentalement, le typage strict une fois activé est super, super strict. Le type doit forcément correspondre »
    Moi qui ai abandonné php pour Java à cause sa gestion de typage faible, que veut dire cette ligne qu'on aura droit à des integer, des booléens comme en java...?

  5. #5
    Modérateur

    @programaniac,
    Mon petit doigt me dit que ce sera proche de ce que propose le langage de Facebook Hack, avec les annotations.
    N'hésitez pas à consulter la FAQ Java, lire les cours et tutoriels Java, et à poser vos questions sur les forums d'entraide Java

    Ma page Developpez | Mon profil Linkedin | Vous souhaitez me contacter ? Contacter Gokan EKINCI

  6. #6
    Membre expert
    Citation Envoyé par Gugelhupf Voir le message
    @programaniac,
    Mon petit doigt me dit que ce sera proche de ce que propose le langage de Facebook Hack, avec les annotations.
    On pourra écrire ça :

    Code PHP :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    function add(float $a, float $b): float {
        return $a + $b;
    }


    Voir la RFC

  7. #7
    Inactif  
    si on aime les langages flexible (c'est mon cas), un typage optionnel, c'est plutôt bien, pour faire des test sur un entier par exemple, c'est mieux.
    Mais il arrive des fois ou on préfère ne pas typer, car on ne connait pas la nature de la variable et que l'on n'a pas envie de se casser la tête

    Sinon ce qui serait bien, se serais d’ouvrir le php a autre chose que le serveur web, sa serait cool de pouvoir faire des petits logiciels avec une interface graphique avec ce langage, un peu comme python avec tkinter.

    Je sais qu'il a existé des bibliothèque en php pour faire cela, mais elles ont é&té abandonnée ou en tous cas ne sont plus maintenue depuis longtemps.

  8. #8
    Membre averti
    Citation Envoyé par sazearte Voir le message
    Encore une chose, depuis php5.5, il y'a eu aussi une hausse (minime) des performances, depuis que le code n'est plus compiler a chaque appel mais une seul fois si il n'est pas modifié, sa a l'air de rien, mais parfois c'est assez bluffant.
    C'est pas automatique, il faut activer le cache opcode pour cela il me semble. Avant php 5.5 c’était déjà possible avec des extensions comme APC.

  9. #9
    Inactif  
    a mince je savais pas, dommage.

    J'ai migré quelques petits projets abandonnés en PHP4 vers PHP5.3,
    Comme tu le dis c'est des vieux projets abandonnées.

    Mais je pense pas qu'il y'ait en 2015 énormément de logiciels utilisé qui soient codée en php4, ils ont au moins pour l'essentiel été "bidouillé" pour être compatible php5

  10. #10
    Expert confirmé
    Et vous ?
    Qu’en pensez-vous ?
    c'est bien ce gros gain en perfs et l'élimination de plein de fonctions obsolètes mais le support complet Unicode prévus au départ dans PHP6 il seras dans PHP8 ou PHP9 ?
    merci de me mettre des quand mes messages sont pertinent, et pour les pas contents voici mon service client pour eux

    [Projet en cours] Strategy(nom provisoire) - Advance wars like
    cordova-plugin-file-hash Plugin cordova servant à obtenir le hash d'un fichier

  11. #11
    Membre expert
    Citation Envoyé par TiranusKBX Voir le message
    c'est bien ce gros gain en perfs et l'élimination de plein de fonctions obsolètes mais le support complet Unicode prévus au départ dans PHP6 il seras dans PHP8 ou PHP9 ?
    Ça prendra pas la même forme que pour PHP6 où le but été de tout réécrire pour ça et ce qui causé sa mort. Il est possible que ça passe par un objet String.

  12. #12
    Nouveau membre du Club
    Yeah cool !!

  13. #13
    Membre expérimenté
    Citation Envoyé par sazearte Voir le message
    PHP4, qui l'utilise encore ?, il n'est plus supporté, n'a plus de maj de sécurité, donc je pense qui une entreprise a encore un intranet/site en php4, elle devrait sérieusement envisagée de migrer vers php7 directement.
    Je bosse actuellement pour un site e-commerce de moyenne envergure (mais très connu), où tout le code est en PHP4. On migre vers PHP5. J'imagine que ce n'est pas le seul site à ne pas avoir changé de version, c'est comme les sites uniquement compatible avec tel ou tel navigateur codé il y a 10 ou 15 années : plus ils sont vieux, plus c'est compliqué (et cher) de tout refaire, donc la probabilité de ne rien faire augmente avec le temps

  14. #14
    Inactif  
    Je bosse actuellement pour un site e-commerce de moyenne envergure (mais très connu), où tout le code est en PHP4.
    Je pensais pas qu'il existait des sites en ligne encore sous php4, c'est pas dangereux niveau sécurité ?

  15. #15
    Membre expérimenté
    Citation Envoyé par sazearte Voir le message
    Je pensais pas qu'il existait des sites en ligne encore sous php4, c'est pas dangereux niveau sécurité ?
    Si, mais comme ça le client peut dire que c'est la faute des prestas

  16. #16
    Membre chevronné
    De très bonnes nouvelles tout ça !

    Je commençais à avoir une certaine préférence pour .NET et ASP.NET MVC, surtout en regardant les news de la V6 mais là, entre le typage fort et les gains de performance, un framework comme ZendFramework me semble rester complètement dans la course

    A l'instar de C# 6, j'espère que le langage va lui aussi bien continuer son évolution.
    .o0o__St@iLeR__oOo.

    Lead Developer

    ASP.NET MVC - MCP/MCSD ASP.NET
    PHP Zend Framework / PhalconPHP
    Cordova/Xamarin IOS/Android
    Kendo UI - ExtJS - JQwidgets
    SQL Server / MySQL

  17. #17
    Membre expert
    Un language il est typé ou il est pas typé. Un language où on peut typer ou pas, ça me faire dire que ça vite être le bordel, puisque qu'on aura le choix entre pas typer du tout, typer juste les objets, tout typer, typer que quand on en a besoin...

    Bref, des conventions à mettre en place pour pas grand chose au final.

    Sinon, l'amélioration des perfs de 100% est une excellente nouvelle !
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  18. #18
    Membre éclairé
    Citation Envoyé par Spartacusply Voir le message
    Un language il est typé ou il est pas typé. Un language où on peut typer ou pas, ça me faire dire que ça vite être le bordel, puisque qu'on aura le choix entre pas typer du tout, typer juste les objets, tout typer, typer que quand on en a besoin...

    Bref, des conventions à mettre en place pour pas grand chose au final.

    Sinon, l'amélioration des perfs de 100% est une excellente nouvelle !
    ça peut aussi être utile à la rétrocompatibilité

  19. #19
    Membre expert
    Certes, mais ça me dit pas si je dois typer mes variables ou pas dans mes nouveaux projets (parce que mine de rien le transtypage de php c'est quand même sympa, pas toujours, mais souvent...)
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  20. #20
    Membre chevronné
    @Spartacusply : étant donné que j'utilise presque tous les jours les 2 langages : C# et PHP, je peux te dire que le typage fort est très important. Surtout pour des projets avec beaucoup de code ou quand on travaille à plusieurs.

    Grâce au typage en C#, il a pu être crée les méthodes d'extensions (et ce n'est qu'un exemple).

    Style :
    int multiplierpar2(this int a) { return a * 2; }

    Dans ton code, tu vas pouvoir faire :

    int monInt = 2;
    int res = monInt.multiplierpar2();

    En quelque sorte tu vas rajouter des fonctionnalités persos au langage.

    Si PHP continue à aller dans le sens du typage fort (voir même que toute variable soit à la base un objet comme en .Net) on pourrait nous aussi imaginer avoir un jour ce type de possibilité.

    Là ou PHP par contre à un avantage grâce à son typage faible c'est sur les propriétés dynamiques. Nous pouvons faire, entre autres :

    $monObjet->{'NomDeMaPropriété'}

    On l'a tous fait, ça n'utilise pas l'introspection et c'est hyper pratique (surtout quand on se développe des librairies utilitaires, ou encore sur l'application de certains Design Patterns).

    Voilà mon point de vue
    .o0o__St@iLeR__oOo.

    Lead Developer

    ASP.NET MVC - MCP/MCSD ASP.NET
    PHP Zend Framework / PhalconPHP
    Cordova/Xamarin IOS/Android
    Kendo UI - ExtJS - JQwidgets
    SQL Server / MySQL