PHP 7.0.0 officiellement disponible

Le , par Michael Guilloux, Chroniqueur Actualités
Après près de deux ans de développement, 13 préversions et quelques reports, PHP 7.0.0 est enfin disponible. L'annonce officielle de sa disponibilité a en effet été faite hier par l'équipe chargée de son développement. Conformément à ce qui avait été annoncé sur le site de PHP lors de la dernière préversion, la version finale de PHP 7.0.0 est identique à la 8e release candidate à quelques corrections de bogues près.


Comme dans les branches précédentes, PHP 7 apporte de nombreuses nouveautés : fonctionnalités, fonctions, classes et interfaces, constantes globales. Il faut aussi noter des modifications en ce qui concerne certaines fonctions et la suppression de quelques fonctionnalités obsolètes. Mais ce qu'il faut retenir dans cette nouvelle version majeure de PHP, c'est l'amélioration de la performance avec un moteur Zend Engine jusqu'à deux fois plus rapide que dans la version 5.6. Parmi les autres améliorations et nouvelles fonctionnalités dans le langage de programmation, l'équipe de développement de PHP 7.0.0 met également l'accent sur :

  • une utilisation de la mémoire considérablement réduite ;
  • l'arbre syntaxique abstrait (AST) ;
  • un support 64-bit compatible ;
  • une amélioration de la hiérarchie Exception ;
  • de nombreuses erreurs « fatales » converties en « Exceptions » ;
  • un générateur de nombre aléatoire (RNG) sécurisé ;
  • la suppression des anciennes interfaces de programmation des applications serveur (SAPI) et extensions, ainsi que celles qui ne sont pas prises en charge ;
  • l'opérateur de coalescence null (??) ;
  • les déclarations de type Return et Scalar ;
  • les classes anonymes ;
  • les asserts zero cost.

Pour les développeurs qui veulent migrer leurs codes de PHP 5.6.x vers PHP 7.0.x, il est recommandé de consulter le guide de migration pour la liste des nouvelles fonctionnalités et des changements qui ne sont pas compatibles avec les versions précédentes. Ces informations sont disponibles sur la page officielle de PHP.

Télécharger le code source de PHP 7.0.0
Liste complète des changements
Guide de migration de PHP 5.6.x vers PHP 7.0.x

Source : Annonce officielle de la disponibilité de PHP 7.0.0

Et vous ?

Qu'appréciez-vous le plus dans cette nouvelle version de PHP ?
Quels changements et fonctionnalités auriez-vous appréciés dans cette version, mais qui n'y sont pas ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de quanta quanta - Membre habitué https://www.developpez.com
le 04/12/2015 à 22:20
Citation Envoyé par Artemus24 Voir le message
Donc non, l'informatique n'est pas un métier pépère. Et je ne parle même pas des 12H par jours de travail en temps normal, sans compter parfois les week-end.

@+
, oui mais non
Avatar de RyzenOC RyzenOC - Membre averti https://www.developpez.com
le 05/12/2015 à 9:59
Je viens de migrer ce matin et effectivement je constate une amélioration niveau performance sur certains de mes bouts de code (principalement sur les foreach ou c'est 3 fois plus rapides et aussi sur certaines requêtes ajax ou c'est plus réactifs).

Faudrait que je mette a jour mysql 5.5 vers 5.7 aussi pour optimiser aussi l'accès à ma BDD, apparemment la 5.7 est plus rapide.
Avatar de Iradrille Iradrille - Expert confirmé https://www.developpez.com
le 05/12/2015 à 10:05
Citation Envoyé par sazearte Voir le message
Je viens de migrer ce matin et effectivement je constate une amélioration niveau performance sur certains de mes bouts de code (principalement sur les foreach ou c'est 3 fois plus rapides et aussi sur certaines requêtes ajax ou c'est plus réactifs).

Faudrait que je mette a jour mysql 5.5 vers 5.7 aussi pour optimiser aussi l'accès à ma BDD, apparemment la 5.7 est plus rapide.
Intéressant, ta des mesures ? C'est du traitement lourd j'imagine ?
Avatar de zozizozu zozizozu - Membre du Club https://www.developpez.com
le 08/12/2015 à 17:23
Sur mon pc, php5 met 213 ms pour résoudre un sudoku, php7 met 0.083, soit 2.5 fois plus rapide °)
Avatar de nazoreen nazoreen - Membre actif https://www.developpez.com
le 08/12/2015 à 17:56
Citation Envoyé par zozizozu Voir le message
Sur mon pc, php5 met 213 ms pour résoudre un sudoku, php7 met 0.083, soit 2.5 fois plus rapide °)
Je serais curieux de voir le code pour le sudoku, merci.
Avatar de zozizozu zozizozu - Membre du Club https://www.developpez.com
le 08/12/2015 à 18:04
Citation Envoyé par nazoreen Voir le message
Je serais curieux de voir le code pour le sudoku, merci.
Je pense l'avoir pompé dans le coin, à peine modifié ...
Avatar de T`lash T`lash - Membre confirmé https://www.developpez.com
le 10/12/2015 à 19:29
Citation Envoyé par quanta Voir le message
, oui mais non
Et pourtant, on est beaucoup à être dans ce cas...
Avatar de Tsilefy Tsilefy - Membre émérite https://www.developpez.com
le 10/12/2015 à 23:07
Citation Envoyé par T`lash Voir le message
Et pourtant, on est beaucoup à être dans ce cas...
Ce n'est pas du tout particulier à l'informatique, c'est ta boîte qui veut économiser ses coûts au max en te faisant bosser des heures indécentes au lieu d'embaucher. Bien évidemment, c'est différent si tu es indépendant, tu peux bosser autant d'heures que tu veux. Mais si tu es salarié, c'est juste que tu te fais exploiter par ta boîte (et je sais, beaucoup n'ont pas le choix).
Avatar de T`lash T`lash - Membre confirmé https://www.developpez.com
le 11/12/2015 à 1:13
Citation Envoyé par Tsilefy Voir le message
Ce n'est pas du tout particulier à l'informatique, c'est ta boîte qui veut économiser ses coûts au max en te faisant bosser des heures indécentes au lieu d'embaucher. Bien évidemment, c'est différent si tu es indépendant, tu peux bosser autant d'heures que tu veux. Mais si tu es salarié, c'est juste que tu te fais exploiter par ta boîte (et je sais, beaucoup n'ont pas le choix).
Ou tout simplement que quand un de tes collègues démissionne durant l'été et que prendre le temps de former un nouveau serait incompatible avec les objectifs à atteindre avant la fin d'année, il n'y a pas le choix que d'assurer sa charge de travail.
Le problème est que, contrairement à ce que pensent certains employeurs, nous ne sommes pas tous interchangeables...
Un jeune qui a travaillé chez nous à plusieurs reprises durant ses vacances doit rejoindre notre équipe pour son stage de fin d'étude dans 10 jours, donc on devrait pouvoir souffler un peu, mais ma direction n'aurait pas pu y faire grand chose dans ce cas. Elle aurait bien pu embaucher temporairement un élément de plus, mais à ce moment il n'aurait pas vraiment pu nous aider.
Avatar de macslan macslan - Membre éclairé https://www.developpez.com
le 11/12/2015 à 8:48
Citation Envoyé par Tsilefy Voir le message
Ce n'est pas du tout particulier à l'informatique, c'est ta boîte qui veut économiser ses coûts au max en te faisant bosser des heures indécentes au lieu d'embaucher. Bien évidemment, c'est différent si tu es indépendant, tu peux bosser autant d'heures que tu veux. Mais si tu es salarié, c'est juste que tu te fais exploiter par ta boîte (et je sais, beaucoup n'ont pas le choix).
Ou alors tu travaille de piquet ce qui n'a rien à voire à être exploiter, d'ailleurs d'autre métier peuvent être de piquet
Avatar de valaendra valaendra - Membre confirmé https://www.developpez.com
le 11/12/2015 à 9:21
Citation Envoyé par Artemus24 Voir le message
Donc non, l'informatique n'est pas un métier pépère. Et je ne parle même pas des 12H par jours de travail en temps normal, sans compter parfois les week-end.
Ni du travail urgent que l'on donne à la dernière minute et que l'on devait rendre il y a quinze jours, alors que ce même responsable était en vacances.
Et après tout cela, on t'explique que tu coûtes très chez et que cette année, tu n'auras pas l'augmentation tant attendue.
Avoir beaucoup de boulot c'est une chose, se faire exploiter en est une autre :-)
Avatar de Tsilefy Tsilefy - Membre émérite https://www.developpez.com
le 11/12/2015 à 19:22
Citation Envoyé par T`lash Voir le message
Ou tout simplement que quand un de tes collègues démissionne durant l'été et que prendre le temps de former un nouveau serait incompatible avec les objectifs à atteindre avant la fin d'année, il n'y a pas le choix que d'assurer sa charge de travail.
Le problème est que, contrairement à ce que pensent certains employeurs, nous ne sommes pas tous interchangeables...
Un jeune qui a travaillé chez nous à plusieurs reprises durant ses vacances doit rejoindre notre équipe pour son stage de fin d'étude dans 10 jours, donc on devrait pouvoir souffler un peu, mais ma direction n'aurait pas pu y faire grand chose dans ce cas. Elle aurait bien pu embaucher temporairement un élément de plus, mais à ce moment il n'aurait pas vraiment pu nous aider.
Bien évidemment, mais là on est dans un cas particulier (quoique l'exploitation des stagiaires, c'est aussi un problème, mais bon). Je réagissais au fait que bosser 12 h par jour soient liés à l'informatique.
Avatar de Tsilefy Tsilefy - Membre émérite https://www.developpez.com
le 11/12/2015 à 19:28
Citation Envoyé par macslan Voir le message
Ou alors tu travaille de piquet ce qui n'a rien à voire à être exploiter, d'ailleurs d'autre métier peuvent être de piquet
Je ne connaissais pas cette expression :-)

Effectivement, oui, ça n'a rien à voir. L'exploitation c'est quand on fait croire aux débutants/juniors que faire beaucoup d'heure est normal quand on bosse dans l'informatique, et qu'ils ne doivent pas demander une rémunération équivalente parce que (au choix: ça fait partie du métier/ils ont déjà de la chance de travailler/il y a dix millions d'ingénieurs indiens qui peuvent faire le même boulot à 5 euros par heure/nous on a fait comme ça alors la ramène pas). C'est de l'exploitation parce qu'on profite de la relation asymétrique entre boîte et jeune débutant.

Quand t'es senior et si tu es payé en conséquence, libre à toi de bosser autant que tu veux :-)
Avatar de Victor Vincent Victor Vincent - Chroniqueur Actualités https://www.developpez.com
le 26/05/2016 à 13:04
La version 7.1 de PHP sera bientôt rendue disponible,
cette nouvelle version met plus l’accent sur les performances que sur les règles syntaxiques

La version 7 de PHP a été conçue pour gagner en vitesse par rapport aux versions antérieures du langage. Cette mise à jour du langage de développement côté serveur qui est prévue pour novembre ne déroge pas à la règle et aurait gagné en performance. Avec les versions de mise à jour de la version 7 du langage, l’équipe de développement de PHP a prévu plusieurs nouvelles fonctionnalités tout en insistant sur le caractère primordial donné à la vitesse d’exécution. En effet, le PDG de Zend qui est par ailleurs celui qui a été à la tête du développement du moteur de script open source pour PHP déclare qu’ils « continuent de travailler sur la performance » du langage. Il ajoute également que des discussions sont en cours en interne sur certains aspects liés à la syntaxe conformément aux spécifications de la RFC (Request fo Comments).

Les nouvelles fonctionnalités qui ont été ajoutées à la version 7.1 vont du support des types nullables à la gestion d’exceptions multiples dans une seule clause de type catch. Cette mise à jour donne également la possibilité de retourner un type Void pour des actions ou traitements qui ne retournent pas de valeur ainsi que le support des Server Push via curl HTTP/2. La version 7.1 de PHP viendra aussi avec une généralisation du support des déplacements négatifs sur les chaines de caractères ainsi qu’une fonctionnalité permettant d’alerter en cas de chaines de caractères invalides pour réaliser certaines opérations.

Les développeurs de la version 7.1 de PHP mettent plus l’accent sur la performance que sur les règles syntaxiques. En effet, selon Zuraski, « les gens sont plus intéressés par les performances du langage que par de nouvelles règles syntaxiques ». Il ajoute également que PHP est un langage mature ; c’est ce qui explique d’après lui la rapide adoption de la version 7 du langage comparée à la version 5.x dont l’adoption a été relativement plus lente. Cette rapidité d’adoption, PHP le doit notamment à ses performances qui ont été nettement améliorées, soulignent les adeptes du langage. Cette nouvelle version de mise à jour pourrait sortir au mois de novembre d’après le calendrier prévisionnel, mais ce calendrier pourrait être repoussé jusqu’en 2018, note Zuraski.

Source : php.net

Et vous ?

Que pensez-vous de la version 7.1 de PHP ?

Voir aussi

le forum Langage PHP
Avatar de Eric30 Eric30 - Membre régulier https://www.developpez.com
le 26/05/2016 à 13:30
Que pensez vous de la version 7.1 de PHP ?
Que la 7 était déjà très bien, rien que pour le typage strict ou les constantes tableaux , les erreurs catchables...

Donc vivement la 7.1
Avatar de Lcf.vs Lcf.vs - Membre éprouvé https://www.developpez.com
le 03/06/2016 à 2:56
C'est peut-être un troll... car je ne savais pas que PHP a des règles syntaxiques...
Avatar de CoderInTheDark CoderInTheDark - Membre éclairé https://www.developpez.com
le 03/06/2016 à 8:24
Citation Envoyé par Lcf.vs Voir le message
C'est peut-être un troll... car je ne savais pas que PHP a des règles syntaxiques...
J'en rajoute une couche.
C'est le far west, il n'y a pas de règles.
Tu fais n'importe quoi et ça passe

$resultat = "choux" + "carottes" + 1;

C'est pas compatible avec la POO l'absence de règles
C'est un peu mieux en PHP7

En Java ou autres les règles te permettent de te concentrer sur l'essentiel

En PHP j'ai toujours peur d'écrire un truc con et de devoir passer du temps à le trouver après.
Avatar de devEric69 devEric69 - Membre du Club https://www.developpez.com
le 03/06/2016 à 9:34
En effet, selon Zuraski,
« les gens sont plus intéressés par les performances du langage que par de nouvelles règles syntaxiques ».
Je suis intéressé par les deux:
-sur http://benchmarksgame.alioth.debian....st=nbody#about, on voit que l'amélioration de la vélocité du code de php7 sera la bienvenue.
-le typage strict permet de perdre moins de temps à souvent se demander avec quel type de données je suis en train de travailler, ce qui est frustrant .
-surtout, dans la release php 7.1, il y a une amélioration grandement attendue: les vraies énumérations qui permettent une vraie clarification du code, par rapport au pis-aller qui consiste à créer des séries de tableaux d'énumérations, mais qui sont tous typés en tant qu'array .

J'espère qu'ils arriveront à tenir leur calendrier prévoyant une sortie cet automne de php 7.1...
Avatar de sabotage sabotage - Modérateur https://www.developpez.com
le 03/06/2016 à 23:06
C'est le far west, il n'y a pas de règles.
Il y a évidemment des règles, l’interpréteur ne fonctionne pas de manière aléatoire, et ces règles sont documentées.
Alors on peut débattre pour savoir s'il voulait mieux interdire l'addition d'une chaîne et d'un entier ou décrire ce qui se passe si on le fait.
Chez facebook, ils ont ajouté le typage strict à PHP.

Il faut se souvenir que PHP a été créé pour exploiter des formulaires web.

Peut être que dans 10 ans ils ajouteront une option de typage strict, dans 20 ans un avertissement et dans 30 ans ca sera obligatoire.
Avatar de ABCIWEB ABCIWEB - Expert éminent https://www.developpez.com
le 03/06/2016 à 23:51
Citation Envoyé par CoderInTheDark Voir le message
En Java ou autres les règles te permettent de te concentrer sur l'essentiel
on pourrait dire aussi :
En php le faible typage te permet de te concentrer sur l'essentiel
Simplement parce que suivant les besoins on a pas la même définition de l'essentiel.
C'est aussi le cas en javascript parce que ces langages sont initialement conçu pour le web et que dans ce contexte le faible typage est globalement un avantage notamment dans le traitement des formulaires comme l'a rappelé sabotage.

Enfin bon c'est un "maronnier" qu'on entend systématiquement à chaque nouvelle version de php, ce qui m'étonne un peu c'est qu'on ne l'entend jamais dans le forum javascript. Peut-être parce que javascript est tellement différent qu'on ne s'attarde pas longtemps sur ce point particulier mais pourtant c'est les mêmes avantages et inconvénients...
Avatar de Eric30 Eric30 - Membre régulier https://www.developpez.com
le 05/06/2016 à 12:56
De toute façon c'est toujours la même rengaine, entendue des milliers de fois, plus ou moins tournée de la même façon:

PHP te permet de faire n'importe quoi
Déjà, c'est faux, un vieux poncif d'ailleurs souvent balancé par des gens dont les connaissances du langage se résument à quelques heures de cours quand ils étaient étudiant il y a dix ans, ou pire encore qui n'aiment pas ce langage et qui considèrent que tout le monde devrait partager leur opinion (les goûts et les couleurs...).

Ensuite, même si c'était vrai, ce n'est pas parce qu'un langage permettrait de faire n'importe quoi qu'il faut faire n'importe quoi. Sinon votre professionnalisme en prend un coup...

Personnellement je suis certifié PHP mais j'aime aussi beaucoup Java, que j'utilise de temps à autre. Je ne critiquerai jamais un autre langage pour les raisons suivantes (liste non exhaustive) :
- les goûts et les couleurs...
- un langage peut mieux répondre à un besoin qu'un autre, et vice versa.
- la "déformation" professionnelle
- les opportunités...

Et pour information le typage strict existe avec PHP 7, il faut juste l'activer, mais cela, si on a pas lu la doc, on peut pas le deviner et on reste sur les mêmes a priori...

Il y a au moins une chose pour laquelle les développeurs qui font du PHP sont généralement unanimes: ce langage doit être le plus générateur en termes de troll
Avatar de Kearz Kearz - Membre expert https://www.developpez.com
le 06/06/2016 à 10:06
En Java ou autres les règles te permettent de te concentrer sur l'essentiel

En PHP j'ai toujours peur d'écrire un truc con et de devoir passer du temps à le trouver après.
C'est cool, on a appris que tu faisais du JAVA. Ce langage tellement supérieur pour faire du web qu'on le retrouve sur tous les grands sites.
Euh, attends, on m'informe dans l’oreillette que le J2EE est pas si utilisé que ça. Pourtant, avec ses règles qui te permettent de te concentrer sur l'essentiel, vraiment, je comprends pas.

D'ailleurs, le JAVA pour faire du web (en tout cas en France) j'ai l'impression que c'est surtout un truc que pousse les SSII.

J'ai fait du JAVA (web & autres), du PHP, du Node.JS/javascript et un peu de .NET.
Et écrire des trucs à la con et passer du temps à les trouver, j'en ai fait dans tous les langages.
Tout est une question d'habitude, maintenant que j'ai dis que je refusais de faire du JAVA et que je me concentre plus sur le PHP/JS, je trouve plus vite un problème dans du PHP ou du JS que dans du JAVA.
Avatar de Eric30 Eric30 - Membre régulier https://www.developpez.com
le 06/06/2016 à 10:44
Citation Envoyé par Kearz Voir le message
D'ailleurs, le JAVA pour faire du web (en tout cas en France) j'ai l'impression que c'est surtout un truc que pousse les SSII.
Une impression que je partage aussi (j'insiste sur le fait qu'il s'agit d'une impression). Probablement parce que bien souvent, un dev Java est simplement vendu plus cher.

Citation Envoyé par Kearz Voir le message
Et écrire des trucs à la con et passer du temps à les trouver, j'en ai fait dans tous les langages.
Amen
Avatar de devEric69 devEric69 - Membre du Club https://www.developpez.com
le 06/06/2016 à 13:44
D'ailleurs, le JAVA pour faire du web (en tout cas en France) j'ai l'impression que c'est surtout un truc que pousse les SSII.
J'adhère à ce constat. Php est LE langage d'IHM qui a remplacé les sites faits avec des applets Java dans les années 2000 pour ces raisons, entre autres: sécurité et pas autant orienté @string comme l'est Php qui a été initialement pensé comme un moteur de templates.

Je n'ai rien contre Java: c'est un langage que j'ai appris et que je garde sous le coude pour éventuellement créer des servlets de traitement avec la BDD, quand les boucles de php côté back-end ralentissent trop: je préfère déboguer des objets avec un vrai débogueur, plutôt que de passer mon temps dans d'immenses procédures stockées SQL et regarder les messages de traçage dans une table de débogage.
Là où Java peut encore pleinement s'exprimer sur le Web, c'est pour des fonctionnalités back-end réseaux, grâce à son API complète et sa vélocité.

Maintenant, oui, quand on développe du Php, on voudrait un peu plus de rigueur dans les types car les fonctionnalités demandées à Php deviennent de plus en plus complexes, donc demandent parallèlement plus de typage pour moins se perdre. Mais, Java ne remplacera plus Php sur le Web: il faut vous faire une raison. Ceux que ça énerve vont continuer à braire pendant longtemps, mais ça ne changera rien. Ils n'ont qu'à demander pourquoi les tablettes Google Android faites en Java ne laissent pas s'exécuter les sites en applets Java... C'est parce que Google juge que les applets Java sont potentiellement trop dangereuses pour leur OS. Donc, pour résumer, nous avons un OS leader développé en Java qui refuse de voir s'exécuter du Java en IHM ! Ça ne peut que contribuer à renforcer Php comme langage incontournable pour un site Web.
Avatar de _skip _skip - Expert éminent https://www.developpez.com
le 07/06/2016 à 8:38
Pas mal de personnes critiquent les aprioris qu'ont certains partisans de JAVA sur PHP mais ça ne les ennuie pas d'en balancer des bonnes grosses en retour.
Java pour le web, ce n'est pas forcément J2EE, il y a des solutions beaucoup plus légères que ça. Et les applets? Ce n'est pas une technologie destinée à faire des sites mais plutôt des applications qui se lancent côté client, ça avait un sens à l'époque où ça a été conçu mais sauf pour quelques besoins très spécifiques ce sont clairement des reliques du passé. Avancer qu'Android fait en Java ne supporte pas les applets... Bon ben déjà, Android est fait en C/C++, et il possède une JVM spéciale qui n'a que très peu à voir avec celles qui tournent sur windows ou linux. En gros c'est à peu près aussi pertinent que de dire que C++ c'est de la merde parce que linux fait pas fonctionner des vieux ActiveX windows. Je veux bien que le troll ce soit marrant mais il y a déjà largement assez à critiquer sur tous les langages pour ne pas avoir besoin d'inventer n'importe quoi.

Quant à PHP, je me réjouis de la prise d'importance du typage, je regrette juste qu'on ne puisse pas (du moins à ma connaissance) appliquer cela rétroactivement à du PHP5 par transpilation. Dans mon optique, ce pourquoi PHP a été conçu à la base n'a plus grand chose à voir avec ce qu'on lui fait bouffer aujourd'hui. Avec la complexité grandissante des applications web, l'utilisation parfois nécessaire de bibliothèques externes et la multiplication des intervenants, on apprécie mieux les avantages du typage strict et ce que ça permet question support IDE et refactoring. Moi-même en tant qu'auteur de libs PHP pour, je me rends compte que je compense la faiblesse du système de type par

  • Plus de documentation et de commentaires
  • Plus de tests unitaires


Deux choses qui demandent plus de travail et de la maintenance et qui finalement annulent très largement les "avantages" au niveau de la flexibilité. Donc je ne peux que saluer l'effort d'adaptation du langage PHP par rapport aux besoins de cette génération.
Avatar de Kearz Kearz - Membre expert https://www.developpez.com
le 07/06/2016 à 12:44
Java pour le web, ce n'est pas forcément J2EE, il y a des solutions beaucoup plus légères que ça. Et les applets?
Boarf, c'est un raccourcis de dire J2EE pour Java pour le web. (parce qu'au final, spring, c'est pas du J2EE.)

Les applets avait du sens à l'époque, peut-être. Comme le PHP4 avait surement du sens à l'époque.
Mais c'était à l'époque, ça à du sens de critiquer les applets aujourd'hui, comme ça à du sens de critiquer du PHP4.

Donc critiquer PHP7 sur la base de "PHP, c'est dégueulasse" (en ayant PHP4 en tête) ça n'a pas beaucoup de sens.
Avatar de CoderInTheDark CoderInTheDark - Membre éclairé https://www.developpez.com
le 07/06/2016 à 16:29
Citation Envoyé par Kearz Voir le message
C'est cool, on a appris que tu faisais du JAVA. Ce langage tellement supérieur pour faire du web qu'on le retrouve sur tous les grands sites.
Euh, attends, on m'informe dans l’oreillette que le J2EE est pas si utilisé que ça. Pourtant, avec ses règles qui te permettent de te concentrer sur l'essentiel, vraiment, je comprends pas.

D'ailleurs, le JAVA pour faire du web (en tout cas en France) j'ai l'impression que c'est surtout un truc que pousse les SSII.

trouver, j'en ai fait dans tous les langages.
Tout est une question d'habitude, maintenant que j'ai dis que je refusais de faire du JAVA et que je me concentre plus sur le PHP/JS, je trouve plus vite un problème dans du PHP ou du JS que dans du JAVA.
****
Pourquoi tant de haine

Je dis simplement, que je préfère faire de l'objet en Java
plutôt qu'avec PHP.
Mais ça va peut être changer
J'ai bien été assez maboul pour faire de l'objet en PHP4

Et il n'y a pas que ça, à prendre en compte.
Les exceptions en PHP, ça ne valait pas un clou.
Je préférai faire des if comme en C pour gérer les erreurs.
Ca va peut être changer aussi.

, d'après ce que j'ai lu, Les nouveautés de PHP me plaisent bien.
Un peu plus de rigueur ça ne ferait pas de mal à PHP.
Tu ne crois pas ?

J'ai participé à un projet, qui aurait du être en Java.
Mais finalement on a fait du PHP avec Synfony2, car on a estimé que Java était trop lourd pour notre petit projet.
J'ai bien aimé Doctrine, ça me rappelait Hibernate, en moins lourd.

Mais de là à défendre PHP ou Java.
Je programme un point c'est tout après la technologie c'est secondaire.

C'est sûr à changer de techno on s'y perd.

Le problème avec PHP, c'est que les managers considèrent PHP comme une techno pour débutant.

Et pourtant c'est parfois dur de trouver un bon développeur PHP.
C'est ce qui m'en a un peu éloigner
Avatar de Kearz Kearz - Membre expert https://www.developpez.com
le 07/06/2016 à 17:02
J'ai rien contre le fait de faire du JAVA hein.

Je le trouve juste, très, trop lourd pour le web.
Tu prends l'exemple de Doctrine, t'as vu a quel point c'est souple/simple par rapport à Hibernate? Et pourtant tu récupère des objets aussi. Hibernate, c'est pareil en lourd.

Donc oui, les objets en JAVA, c'est pratique quand tu veux gérer que des objets. Donc dans une application, un jeu (enfin là, c'est niveau perf' que ça va pêcher) c'est pas mal.
Il faut pas oublier que 90% des sites web aujourd'hui, c'est aller chercher de information en base et les afficher et donc rarement du traitement très très lourd.

Je pense que pour la majorité des sites, PHP fait l'affaire, surtout avec des frameworks comme Symfony/laravel/zend (& leurs versions light). Il y a des cas où .NET/JAVA seront mieux mais ça reste marginal (gros site, gros calcul, ..).
Alors que les SSII ont tendances à pousser le Java pour le TJM pour tout et n'importe quoi. Des site web de gestion de base (genre 5 tables qui se battent en duel avec moins de 1000 entrées avec quasiment aucun traitement) en JAVA? C'est pas sortir un bazooka pour tuer une mouche? Et pourtant j'en ai vu..

Par contre, si demain on me demande de faire une application bureautique en PHP, je vais trouver ça complètement ridicule. Java/C# sont largement mieux pour faire des applications.
Avatar de devEric69 devEric69 - Membre du Club https://www.developpez.com
le 08/06/2016 à 15:46
Et les applets? Ce n'est pas une technologie destinée à faire des sites mais plutôt des applications qui se lancent côté client, ça avait un sens à l'époque où ça a été conçu mais sauf pour quelques besoins très spécifiques ce sont clairement des reliques du passé.
??? Affirmer que les applets ne sont pas une technologie destinée à faire des sites , c'est un non-sens!

Avancer qu'Android fait en Java ne supporte pas les applets... Bon ben déjà, Android est fait en C/C++, et il possède une JVM spéciale qui n'a que très peu à voir avec celles qui tournent sur windows ou linux. En gros c'est à peu près aussi pertinent que de dire que C++ c'est de la merde parce que linux fait pas fonctionner des vieux ActiveX windows.
J'ai une tablette Google Nexus: je l'ai choisie pour le support des mises à jour automatiques qui est impeccable . Je ne vois pas où j'ai dit que Google ou Android étaient de la merde .

Par contre je dis que moi, je sais qu'avec ma tablette Google Nexus tournant sous Android, les applets Java sont interdites d'affichage et que ça concerne encore beaucoup de sites. C'est comme ça. Ce qui m'amène à constater que le comportement de ma tablette - mais je pourrais dire la même chose de la sur-protection de beaucoup de navigateurs vis à vis de cette technologie, du point de vue d'un internaute de base - contribue à marginaliser les sites développés en applets Java et contribue à renforcer Php pour de nouveaux développements si je tiens compte de cette information, vu qu'Android est devenu un des OS leaders. J'peux pas être plus clair. Et j'ajouterai qu'il me semble que c'est plutôt un fil dédié à "Php7 et son évolution Php7.1 pour des fonctionnalités avec IHM sur internet", et non pas dédié à "Java et des corrélations vérifiées ou pas versus Php7 pour des fonctionnalités avec IHM sur internet".

Cordialement .
Avatar de _skip _skip - Expert éminent https://www.developpez.com
le 09/06/2016 à 9:11
Citation Envoyé par devEric69 Voir le message
??? Affirmer que les applets ne sont pas une technologie destinée à faire des sites , c'est un non-sens!
Si tu considères qu'une application en bytecode qui s'exécute sur le poste et affiche des widgets desktop est "un site". Alors oui...
Avatar de Lcf.vs Lcf.vs - Membre éprouvé https://www.developpez.com
le 11/06/2016 à 10:35
Franchement, y a un truc dont je rêve, en PHP... c'est une nette amélioration du DOM, tant en perfs qu'en support des éléments HTML5 (sans notices, ni warnings) et en termes de méthodes natives.

L'HTML5 et le DOM 3 ont été standardisés depuis pas mal de temps, tout de même...
Avatar de Olivier Famien Olivier Famien - Chroniqueur Actualités https://www.developpez.com
le 01/10/2016 à 4:45
PHP 7.1 RC 3 est disponible
avec un accent mis sur les corrections des bogues et l’ajout de quelques nouvelles fonctionnalités

Selon le planning élaboré par l’équipe de PHP, la version finale de PHP 7.1 devrait être disponible avant la fin du mois de novembre prochain. En attendant cette date, les administrateurs du langage viennent de mettre à la disposition des développeurs la troisième release candidate de PHP 7.0.

Dans cette nouvelle version, la part belle a été faite aux corrections de bogues. Nous avions par exemple les erreurs suivantes qui ont été découvertes et corrigées dans cette dernière version :

  • PHP plante si le gestionnaire d’erreur déclenche un avertissement en accédant à une constante non définie dans la value par défaut ;
  • la fonction parse_str() fait crasher PHP lorsqu’elle ne dispose pas d’un second argument ;
  • PHP indique une segfault sur une fonction non définie ;
  • une erreur de type parse error : Invalid numeric literal ;
  • le paramètre 1 ne pouvait être passé par référence ;
  • un débordement d’entier dans la fonction gdImageWebpCtx du fichier gd_webp.c ;
  • la fonction stream_set_blocking ne fonctionnait pas ;
  • le dépassement des limites en lecture dans la fonction php_stream_filter_create ;
  • imagegd2() ignore le 3e paramètre si 4 paramètres sont fournis ;
  • la fonction imagecreatefromgd2()peut avoir une fuite de mémoire ;
  • etc.

Mais il n’y a pas que des erreurs qui ont été corrigées dans cette version de PHP. Dans cette release candidate, il faut s’attendre également à plusieurs améliorations dont :

  • la possibilité de spécifier des clés dans la fonction list() ;
  • l’ajout d’une commande de générateur pour l’inspection des générateurs qui sont toujours en cours ;
  • l’annulation de la rupture de compatibilité ascendante dans la fonction ReflectionType->__toString(), avec une dépréciation dans la documentation, toutefois ;
  • une suite de tests a été ajoutée à l’extension PHP Data Objects ;

Eu égard au fait que le projet est encore au stade de développement, les développeurs du langage recommandent de ne pas l’utiliser dans un environnement de production. Par ailleurs, l’équipe en charge du projet annonce qu’elle attend les retours des utilisateurs afin de pouvoir corriger et améliorer ce produit avant qu’il ne soit disponible au grand public.

Source : PHP

Et vous ?

Quelles sont les améliorations que vous souhaiteriez voir dans cette nouvelle version de PHP ?

Voir aussi

La version 7.1 de PHP sera bientôt rendue disponible, cette nouvelle version met plus l'accent sur les performances que sur les règles syntaxiques

La Rubrique PHP, Forum PHP, Cours et tutoriels PHP, FAQ PHP
Avatar de sarnikoff sarnikoff - Nouveau Candidat au Club https://www.developpez.com
le 04/10/2016 à 11:00
< Image d'un pigeon >

Bien utilisant très modestement le php ( php3 ) avant de m'essayer au php5 objet,
je trouve ce commentaire peu conforme à la loi de Gauss, dans le sens rationnel,
et peu modeste dans le sens de ma morale ,
le 100% me faisant penser au plus Blanc que blanc ... ( de feu Coluche)e comprends

NB: Je ne comprends rien à cette phrase : gain de quoi ? et à 100% ( Est-ce que ça va remplacer la voiture électrique ?)
Par contre, je me suis habitué au bug de ce site concernant le "upload classic image"
Avatar de sabotage sabotage - Modérateur https://www.developpez.com
le 04/10/2016 à 20:14
La mesure a été faite sur des nombres de transactions traitées par seconde sur des plateformes de eCommerce, des CMS et des Framework.
On peut évidemment ne pas prendre ces chiffres pour argent comptant et réaliser sois même des mesures.
Avatar de sarnikoff sarnikoff - Nouveau Candidat au Club https://www.developpez.com
le 07/10/2016 à 14:28

J'avais oublié qu'il s'agissait de lessive,
(d'autant plus que je n'en teste plus depuis 2012)

NB: Ce pigeon là ne fait que 63Ko ... Mais ce qui a d'interressant dans le php, ce n'est pas que sa vitesse mais aussi GD.
Avatar de Kearz Kearz - Membre expert https://www.developpez.com
le 07/10/2016 à 15:18
Hum...ça va avec tes pigeons?
C'est une passion, certains troll le vendredi et toi tu pigeonnes?

Oui, c'est des chiffres à prendre avec des pincettes. Cependant le gain de performance entre PHP5 et 7 existe bien, il y a surement des cas où le gain est plus faible (20%) et quelques rares cas où il est de 100%.
Et alors? Le gain est là, c'est le plus important. Après si c'est doré à coup de marketing, c'est secondaire.
Avatar de Mister Nono Mister Nono - Membre expérimenté https://www.developpez.com
le 07/10/2016 à 16:20
PHP 7.1 RC 3 est disponible

Avec un accent mis sur les corrections des bogues et l'ajout de quelques nouvelles fonctionnalités

Marre de ces produits qui passent leur temps à être débuggés : ce qui est la preuve qu'ils ne sont pas bons...
Avatar de rawsrc rawsrc - Modérateur https://www.developpez.com
le 08/10/2016 à 14:18
Euh, Nono, le clown, vas-y cite moi un soft qui n'a jamais fait l'objet du moindre patch stp. N'aie pas peur, je suis capable de lire les longues listes ; mon écran est en 27" rotatif, juste au cas où...
Avatar de Aizen64 Aizen64 - Membre averti https://www.developpez.com
le 25/10/2016 à 17:56
A vrai dire, ce que j'attend de ce langage qui a été, il faut bien l'admettre, mal concu :
- lancer des exceptions au lieu de retourner false sur différentes fonctions natives comme les regex par exemple (ou plein d'autres,
- Un vrai moteur de template optionel développé par les contributeurs du language, Twig répond à mes besoins mais dépend des dev Symfony, parce qu'écrire
Code : Sélectionner tout
<?php echo $var ?>
est quand même plus verbeux que
Code : Sélectionner tout
{{ var }}
- A quand des types génériques intégrés au language ?! Une extension exite, mais est, encore, développée par des tiers : PHP Data Structures. Tout ça existe depuis une dizaine d'années avec C#/Java, PHP stocke tout dans des tableaux.
Avatar de ABCIWEB ABCIWEB - Expert éminent https://www.developpez.com
le 25/10/2016 à 18:28
Cela fait un moment que l'on peut faire <?= $var ?> à la place de <? echo $var ?>... Mais quel est le rapport avec le sujet ? A vrai dire, il faut bien l'admettre, tu es complétement hors sujet.
Avatar de Aizen64 Aizen64 - Membre averti https://www.developpez.com
le 25/10/2016 à 20:07
Le fond de ma remarque est qu'il n'y a pas uniquement la performance brute à améliorer mais les fonctionnalités du langage.

Merci pour la méthode plus courte de faire un écho je j'ignorais. Ça va pas me servir sur mon projet puisque j'utilise Twig mais j'ai aussi un dinosaure à maintenir et ça peut être utile.
Avatar de sarnikoff sarnikoff - Nouveau Candidat au Club https://www.developpez.com
le 05/11/2016 à 10:10
Je ne trouve pas hors sujet la remarque sur la fonctionnalité

la remarque sur: =$var et echo($var) , echo $var peut aussi rejoindre la grogne de "Linus Thorval" concernant la présentation des commentaires, et même tout ce qu' on attend d'un langage.

Trop de communication tue la communication :

echo $var est proche du shell (Unix) , echo($var); est proche du C ...
Et ainsi on peut apprécier aussi qu'il puisse y avoir une certaine unité syntaxique entre les langages.

D'ailleurs dans l'histoire, il existe quelques expressions pouvant être utilisées littéralement en anglais,
en lieu et place du "mnémonique" en COBOL. ( Aspiration à écrire comme "on" respire )
Avatar de Michael Guilloux Michael Guilloux - Chroniqueur Actualités https://www.developpez.com
le 07/12/2016 à 10:24
PHP 7.1.0 disponible avec le support des types nullables et de nombreuses autres fonctionnalités
mais aussi des gains de performance

Un an après la sortie de PHP 7.0, la branche 7.x du langage de développement web côté serveur reçoit sa première itération majeure : la version 7.1. PHP 7.0 a apporté des gains de performance avec un moteur Zend Engine jusqu'à deux fois plus rapide que dans la version 5.6, mais également de nombreuses fonctionnalités.

PHP 7.1 supporte également de nouvelles fonctionnalités avec encore des gains de performances. Côté performance, Zeev Suraski, cofondateur de Zend Technologies explique que la mise à jour fournit au langage un gain de performance de jusqu’à 35 % pour les charges de travail avec une utilisation intensive du CPU.

En ce qui concerne les nouvelles fonctionnalités du langage, on peut mettre en avant le support des types nullables qui permet de compléter un type de paramètre ou de retour en indiquant qu'il accepte en plus le type null. D’après la documentation officielle de PHP, « les déclarations de type pour les paramètres et les valeurs de retour peuvent maintenant être marquées comme nullables en ajoutant comme préfixe un point d'interrogation(?) au nom du type. Cela signifie que, de même que le type spécifié, null peut être passé comme argument ou retourné comme valeur ».

PHP 7.1 introduit également un type de retour void qui permet d’indiquer qu’une fonction ne retourne rien. Dans la documentation de PHP, il est expliqué que « les fonctions déclarées avec void comme type de retour doivent soit omettre leur instruction de retour complètement, soit utiliser une instruction de retour vide », en précisant que « Null n'est pas une valeur de retour valide pour une fonction void ».

Cette nouvelle version de PHP vient aussi avec un nouveau pseudo-type similaire à callable. Appelé Iterable, il permet d'indiquer qu'une fonction accepte (ou retourne) aussi bien un array qu'un objet implémentant Traversable. « Il peut être utilisé dans les types de paramètres et de retour, où il accepte soit les tableaux, soit les objets qui implémentent l'interface Traversable ». Dans le cas du sous-typage, « les types de paramètres des classes enfants peuvent élargir la déclaration d'un parent du type array ou de Traversable à Iterable. Avec les types de retour, les classes enfants peuvent restreindre le type de retour d'un parent du pseudo-type Iterable à array ou un objet qui implémente Traversable. »

PHP 7.1 ajoute encore le support pour spécifier la visibilité des constantes. Les constantes de classes supportent désormais les visibilités public, protected et private. Les constantes sans visibilité définies explicitement seront donc considérées comme publiques.

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
 
<?php
class ConstDemo
{
    const PUBLIC_CONST_A = 1;
    public const PUBLIC_CONST_B = 2;
    protected const PROTECTED_CONST = 3;
    private const PRIVATE_CONST = 4;
}

On note encore, dans cette version, la gestion des exceptions par capture multiple. Il est en effet désormais possible de spécifier plusieurs exceptions par bloc catch à l'aide du caractère pipe (|). D’après la documentation PHP, cela est utile lorsque différentes exceptions de différentes hiérarchies de classe sont traitées de la même manière.

Code : Sélectionner tout
1
2
3
4
5
6
7
 
<?php
try {
    // some code
} catch (FirstException | SecondException $e) {
    // handle first and second exceptions
}

Ce n’est pas la liste exhaustive des nouveautés et changements dans PHP 7.1. On peut par exemple encore noter que le support des serveurs push HTTP/2 a été ajouté à l'extension curl. Par ailleurs, une nouvelle méthode statique Closure::fromCallable() a été introduite dans la classe Closure pour permettre aux callables d'être facilement converties en objets Closure. PHP 7.1 déconseille également l’utilisation de l’extension mcrypt en faveur d’OpenSSL. L’extension mcrypt sera supprimée du noyau et du référentiel des extensions PHP dans PHP 7.2. Il est également important de noter que des changements de rupture de compatibilité avec PHP 7.0 ont été introduits dans la nouvelle version.

Sources : Annonce de la sortie de PHP 7.1, Nouvelles fonctionnalités dans PHP 7.1

Et vous ?

Que pensez-vous de cette nouvelle version de PHP ?
Quelles sont les fonctionnalités que vous appréciez le plus et qu’attendez-vous de PHP 7.2 ?
Quelle version de PHP utilisez-vous actuellement ? Pourquoi ?

Voir aussi :

Quels sont vos éditeurs préférés pour programmer en PHP ? Partagez votre expérience avec les outils de programmation PHP
Le framework PHP Symfony vient de publier sa version 3.2.0, avec l'intégration d'un nouveau composant pour la gestion des workflows
Avatar de Riwalenn Riwalenn - Membre régulier https://www.developpez.com
le 08/12/2016 à 11:55
Bonjour à tous,
j'ai une question un peu "bête", je suis actuellement sur un site assez vieux qui apparemment est hébergé sur une plateforme php 5.5.38. Je voulais savoir si j'ai la possibilité de le rétrocompatibilisé si jamais php 7.0 n'allait ps du tout. (puis-je revenir en 5.5 sans casse ?) Le problème étant que je ne peux prendre actuellement de risques car nous sommes en période de très grosse affluence en décembre. (absolument rien à voir avec Noël)

Riwalenn
Avatar de TheGuit TheGuit - Membre du Club https://www.developpez.com
le 08/12/2016 à 16:10
Citation Envoyé par Riwalenn Voir le message
Bonjour à tous,
j'ai une question un peu "bête", je suis actuellement sur un site assez vieux qui apparemment est hébergé sur une plateforme php 5.5.38. Je voulais savoir si j'ai la possibilité de le rétrocompatibilisé si jamais php 7.0 n'allait ps du tout. (puis-je revenir en 5.5 sans casse ?) Le problème étant que je ne peux prendre actuellement de risques car nous sommes en période de très grosse affluence en décembre. (absolument rien à voir avec Noël)

Riwalenn
Alors si c'est une periode de forte affluence c'est peut-être pas hyper sage de le faire maintenant. Ensuite il est possible de faire du code PHP compatible 7 et 5.5 en ne profitant pas des nouveauté du 7. Tu as les informations par là bas : http://php.net/manual/fr/migration70.php
Avatar de Riwalenn Riwalenn - Membre régulier https://www.developpez.com
le 08/12/2016 à 16:12
Je te remercie TheGuit, je vais regarder cela tranquillement pour ne pas faire les choses à la hâte .
Avatar de ABCIWEB ABCIWEB - Expert éminent https://www.developpez.com
le 08/12/2016 à 17:13
@Riwalenn Pour le fait de revenir en arrière, cela dépend de ce que te propose ton hébergeur, mais en général y'a pas de souci et ça peut se faire en quelques secondes. Ce n'est pas à ce niveau que le problème se pose puisque le changement de config ne prend qu'un clic sans modifier aucun fichier du site, mais surtout si tu utilises un framework qu'il faudra mettre à jour si non compatible php7. Dans ce cas tu auras intérêt à faire des sauvegardes de fichiers avant la mise à jour au cas où elle se passerait mal.

A savoir aussi que les erreurs ne peuvent survenir que dans des contextes particuliers et donc il faut faire des tests assez poussés. Le mieux est de commencer par te renseigner au niveau des éventuels framework que tu utilises.

Comme l'a dit TheGuit il est plus raisonnable d'attendre une période plus calme.

NB : A savoir aussi si le site web est la seule application installée sur le serveur...
Avatar de tonguide tonguide - Candidat au Club https://www.developpez.com
le 09/12/2016 à 11:23
Le plus raisonnable serait de tester le site en local surtout, tu t'assures de n'avoir aucun bug sans pourrir ton serveur de prod.
Avatar de Kearz Kearz - Membre expert https://www.developpez.com
le 13/12/2016 à 12:08
Citation Envoyé par tonguide Voir le message
Le plus raisonnable serait de tester le site en local surtout, tu t'assures de n'avoir aucun bug sans pourrir ton serveur de prod.
Le plus raisonnable, c'est le serveur de recette.
Le local est rarement ISO en avec la prod, parce que le local peut servir pour plusieurs projet et avoir une configuration plus standard (plus souple). Surtout avec les trucs du type WAMP (LAMP).
(Après si le local est un vagrant ou docker ISO à la prod, ça va aussi)
Contacter le responsable de la rubrique Accueil