Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

PHP 7.3.0 est disponible en version alpha 1 et intègre de nouvelles fonctionnalités,
Plusieurs bogues ont également été corrigés

Le , par Bill Fassinou

164PARTAGES

10  0 

PHP serait le langage de programmation web côté serveur le plus utilisé au monde. Selon un rapport de la W3Techs de 2017, plus de 80 % des sites et applications web l'utilisent. C'est un langage de script populaire assez flexible et pragmatique. Depuis la sortie de la première version en 1994, bien d'autres versions ont vu le jour. Et à l'instar de tous les autres langages, il évolue et apporte régulièrement de nouvelles fonctionnalités et des corrections de bogues. Sa dernière version stable, la 7.2.6, est sortie le 25 mai 2018. Et maintenant, PHP annonce la disponibilité de sa version 7.3.0 alpha 1 depuis le 7 juin 2018. Bien que cette préversion de test ne peut pas être utilisée en production, les développeurs PHP peuvent déjà la tester et reporter les bogues et améliorations qu'ils souhaitent avoir pour la prochaine version stable dont la sortie est prévue pour la fin de l'année 2018.

Après la sortie de cette première préversion de test, les développeurs de PHP prévoient la sortie de trois versions alpha et trois versions bêta vers mi-août 2018 puis six versions admissibles (pre-release), la RC, qui sortiront à chaque deux semaines. Après cela, la version stable 7.3.0 pourra être disponible le 29 novembre 2018 selon le calendrier établi. Déjà dans cette préversion de test 7.3.0 alpha 1, de nouvelles fonctionnalités sont à noter. Dans le core, la fonction net_get_interfaces() est disponible pour permettre de lister les cartes réseau disponibles dans le système d'exploitation. Une nouvelle méthode a été ajoutée à la classe Date : DateTime::createFromImmutable(). Le drapeau JSON_THROW_ON_ERROR a été ajouté à JSON. Pour SQLite3, libsqlite a été mis à jour vers la version 3.24.0. La fonction openssl_pkey_derive a été ajoutée pour OpenSSL.

Plusieurs bogues ont également été corrigés et parmi eux nous avons notamment :
  • #75683 (manque de mémoire dans zend_register_functions() en mode ZTS) ;
  • #74860 (les exceptions non interceptées ne sont pas formatées correctement lorsque error_log est défini sur syslog) ;
  • #53033 (les opérations mathématiques convertissent les objets en entier) ;
  • #75765 (erreur fatale au lieu de l'exception erreur lorsque la classe parente n'est pas trouvée) ;
  • #74941 (la session ne démarre pas après l'envoi des headers).


Téléchargez PHP 7.3.0 alpha 1

Sources : php-src, PHP

Et vous ?

Avez-vous déjà testé cette préversion de test ?
Quelles sont vos remarques et suggestions observées ?
Quelles nouvelles fonctionnalités ou améliorations souhaiteriez-vous pour la prochaine version stable de PHP ?

Voir aussi

Quels sont les mots les plus utilisés dans les langages JavaScript, CSS, HTML, PHP, Ruby, C++, C#, Scala, Go, Python, Perl, Java, Perl, Lua et SQL ?

Club des développeurs Web PHP : actualités, cours, tutoriels

PHP 7.2 est disponible en version stable avec la bibliothèque de cryptographie Sodium et d'autres améliorations et nouvelles fonctionnalités

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de stailer
Membre chevronné https://www.developpez.com
Le 10/06/2018 à 12:21
Si on prend uniquement le cadre des applications webs (en excluant donc les sites internet) et qu'on "oublie" les vieux projets des années 90, je ne pense pas que PHP soit largement 1er en dév d'applications. Du moins je serais curieux d'avoir des stats détaillées. Et s'il est 1er tant mieux car il mon langage préféré après c#

L'évolution des perfs est un vrai progrès mais d'une manière générale, là ou d'autres langages progressent dans leur structure régulièrement (C#, Java...), en 5 ans on ne peut quasiment rien constater de très nouveau en PHP.
Toujours les même déclarations, toujours pas possible de faire des attributs de classe/méthodes (si ce n'est en trichant via les commentaires), toujours pas de classes partielles (il y a les "trait" mais c'est pas tout à fait pareil), pas de possibilités de faire des génériques (MonObjet.MaMéthode<T> etc...

"Quelles nouvelles fonctionnalités ou améliorations souhaiteriez-vous pour la prochaine version stable de PHP ?"

Du vrai typage !!! même si on peut pas le faire dans des variables locales, au moins que l'on puisse le faire dans des propriétés !! que ceci se termine une bonne fois pour toute :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
class MaClasse
{
    public $nom;
    public $age;
    public $isValid;
    public $date_creation;
}
et remplacé par :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
class MaClasse
{
    public string $nom;
    public int $age;
    public bool $isValid;
    public DateTime $date_creation;
}
Et surtout pouvoir typer avec diverses classes. On pourrait imaginer tout simplement :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class UnePersonne
{
    public string $nom;
    public int $age;
    public bool $isValid;
    public DateTime $date_creation;
}

class MaClasse
{
    public UnePersonne[] $desPersonnes; // pour un tableau
    public UnePersonne $unePersonne; // pour une objet unique
}

Pour moi cette fonctionnalité devrait être la priorité principale et elle ouvrira de nombreuses possibilités d'améliorations derrière.
3  0 
Avatar de rawsrc
Modérateur https://www.developpez.com
Le 11/06/2018 à 10:28
et puis j'ai oublié :
vu que PHP a atteint maintenant les 20 ans bien tassés, je pense qu'il ne serait pas aberrant de proposer une version de PHP qui casserait la rétrocompatibilité pour cause de nouvelles fonctionnalités génialissimes.
Bref, il faut préparer les 20 prochaines années et c'est pas en traînant une archi vieille d'il y a 20 ans que ça va se faire. Tu m'entends PHP Core Team ;-)
2  0 
Avatar de Zefling
Membre expert https://www.developpez.com
Le 10/06/2018 à 17:21
Citation Envoyé par stailer Voir le message
Si on prend uniquement le cadre des applications webs (en excluant donc les sites internet) et qu'on "oublie" les vieux projets des années 90, je ne pense pas que PHP soit largement 1er en dév d'applications. Du moins je serais curieux d'avoir des stats détaillées. Et s'il est 1er tant mieux car il mon langage préféré après c#
Ce qui n'est pas dit, c'est qu'il est premier car la majorité des sites sur le Web sont des Wordpress et on peut même mettre des CMS le plus populaire.
1  0 
Avatar de Mrsky
Membre éprouvé https://www.developpez.com
Le 10/06/2018 à 23:36
Le problème avec PHP c'est que c'est un langage de niche, dont la niche tend à disparaître. L'age du PHP+HTML spaghetti est terminé (enfin!), et PHP sert aujourd'hui de backend pour des API ou utilise des systèmes de templates comme Twig ou Blade pour le rendu. PHP se retrouve donc à combattre dans une catégorie purement backend, et même si c'est un langage mature il se retrouve face à Python et Javascript coté scripting et C# et Java coté code compilé. Or la question qui se pose pour les nouveaux devs ou pour ceux qui arrivent dans le web, c'est quel langage choisir, et c'est là que le bat blesse pour PHP car tous les autres langages ont des applications bien plus larges.
1  0 
Avatar de Zefling
Membre expert https://www.developpez.com
Le 10/06/2018 à 23:56
Citation Envoyé par Mrsky Voir le message
Le problème avec PHP c'est que c'est un langage de niche, dont la niche tend à disparaître. L'age du PHP+HTML spaghetti est terminé (enfin!), et PHP sert aujourd'hui de backend pour des API ou utilise des systèmes de templates comme Twig ou Blade pour le rendu. PHP se retrouve donc à combattre dans une catégorie purement backend, et même si c'est un langage mature il se retrouve face à Python et Javascript coté scripting et C# et Java coté code compilé. Or la question qui se pose pour les nouveaux devs ou pour ceux qui arrivent dans le web, c'est quel langage choisir, et c'est là que le bat blesse pour PHP car tous les autres langages ont des applications bien plus larges.
Déjà que l'on ne puissent pas faire de websockets de façon simple est un problème pour moi. À l'heure de webapp avec un back en rest, PHP a de sacrés handicapes. Si j'avais à refaire mon site, je pense qu'aujourd'hui je passerais sûrement pas autre chose. Pourtant j'aime bien PHP pour certains aspects qui le rende plus simple que d'autres langages sans passer par une foule de bibliothèques qui rend le tout hyper lourd. Mais au fil du temps, c'est de moins en moins vrai. Aujourd'hui peut-être que je ferais plus mon back avec autre chose.
1  0 
Avatar de grunk
Modérateur https://www.developpez.com
Le 06/07/2018 à 8:54
C'est marrant cette fâcheuse habitude qu'on les développeurs à vouloir transformer leur langage pour aller "piquer" ce qu'ils aiment bien chez les autres.

Le typage c'est effectivement intéressant , je l'utilise tous les jours en Java ou en C++. Ça fait aussi 15 ans que je fait du PHP et je me suis jamais retrouvé emmerdé parce que j'avais pas de typage; c'est juste une habitude à prendre.
Idem si on à besoin d'un backend fortement multithreadé/asynchrone ou qui fait du websocket et bien PHP est peut être pas le bon outil. On va vers autre chose, au moins pour la fonctionnalité qui pose problème.
Aujourd'hui un gros projet n'est jamais fait en un seul langage, on va en général utiliser les bon outils pour les bonnes taches.

Je dis pas qu'il ne faut pas faire évoluer le langage , mais ça doit rester dans la philosophie initiale.

Le seul vrai problème de PHP pour moi c'est l’inconsistance de son API. Le reste c'est juste des fonctionnalités qui existent ou pas. On fait avec ou pas ...
1  0 
Avatar de grunk
Modérateur https://www.developpez.com
Le 06/07/2018 à 11:39
Le nommage par exemple
Certaines fonctions utilisent des underscore d'autre pas : str_replace() vs strcmp() est un exemple parmis tant d'autre.
L'ordre des paramètres est parfois inconsistant : Le plus typique c'est dans les fonctions liées aux tableaux ou aux string. Par exemple array_filter prend un callback en dernier paramètre alors que array_map va le prendre en premier.

C'est plein de petits défaut , pas grave, mais pénibles. Quand je tape str_ dans mon ide je devrais avoir à dispo toutes les fonctions et pas rater celle qui n'ont pas d'underscore pour on ne sait trop quelle raison. Quand j'utilise une fonction str_X le paramètre de recherche et l'ensemble de recherche devrait toujours être dans le même ordre , là à chaque fois je dois regarder la doc pour être certains de ce que je fait.

http://phpsadness.com est plein d'exemple du style.

Après tout ça n’empêche pas que PHP reste mon langage de choix quand je dois faire du web

Ceci étant dit , mis à part le fiasco de PHP6 le développement de PHP à toujours été dans le bon sens. Les performances devenaient problématique face à la concurrence , PHP 7 à redresser la barre. Nul doute qu'ils sauront continuer sur la bonne voie
1  0 
Avatar de rawsrc
Modérateur https://www.developpez.com
Le 27/11/2018 à 8:52
ayant moi-même essayé PHP 7.3, je peux que vous confirmer l'impression générale qui est très positive.
PHP a pris un énorme virage avec la branche 7 : modèle objet très propre et solide, typage strict, support natif d'une des meilleurs bibliothèque open-source de sécurité au monde (LibSodium), des performances à tomber, classes anonymes, support des assertions dans le code (permet de lever des exceptions perso très simplement en se passant du classique try catch), quelques sucres syntaxiques bien pratiques et j'en passe.

Dans le monde business, PHP revient en force et je pense que cela devrait continuer.
Bref, sur son secteur (le web) PHP va continuer à dominer de la tête et des épaules toutes les autres technos et ceci grâce au fait que les équipes ne se reposent pas sur leurs lauriers et bossent dur derrière pour améliorer le produit constamment.
1  0 
Avatar de stailer
Membre chevronné https://www.developpez.com
Le 11/06/2018 à 6:13
Déjà que l'on ne puissent pas faire de websockets de façon simple est un problème pour moi.
J'ai testé ceci : http://socketo.me/ et ça va, c'est pas trop compliqué et ça marche pas mal... On est loin de SignalR en C# par exemple mais bon, ça fait le job
0  0 
Avatar de rawsrc
Modérateur https://www.developpez.com
Le 11/06/2018 à 9:22
Je suis plutôt d'accord avec vous tous, si PHP n'est pas plus ambitieux dans ses évolutions technologiques, je crains pour son avenir.
Il faut regarder ce qui se fait à côté pour ne pas décrocher.
Si encore c'était le plus abouti sur sa niche (le web) il serait tout à fait possible de prendre le temps d'évoluer alors que même sur ce domaine, il commence à se faire distancer.

Va falloir sérieusement envisager quelques améliorations (révolution) :
- typage strict déclaratif (pourquoi pas)
- l'asynchrone
- abandon du fonctionnement stateless (vu le volume des traitements actuel, ce fonctionnement est totalement dépassé)
- serveur d'applications léger à la node.js (boost gigantesque des perfs)
- compilateur JIT
- console interactive (pour les étudiants, histoire que PHP soit enseigné dans les écoles)

et je dois encore en oublier
0  0