Dev back

Dev back

Ce qu’il faut retenir des nouveautés de PHP 8.4 | Les-Tilleuls.coop

La sortie de PHP 8.4 est prévue pour le 21 novembre 2024, apportant plusieurs nouveautés, comme les Property Hooks inspirés de langages tels que Kotlin et Python, permettant une syntaxe simplifiée pour manipuler les propriétés. Elle introduit également la visibilité asymétrique, permettant des niveaux d'accès différents pour la lecture et l'écriture d'une propriété. Les objets paresseux sont introduits pour améliorer la performance, avec des implémentations comme Ghost et Proxy. Enfin, une classe pour parser le HTML5 vient garantir la rétrocompatibilité avec l'HTML4.

Dev back

New in Symfony 7.2: Redesigned TypeInfo Component (Symfony Blog)

La version 7.2 de Symfony introduit des améliorations au composant TypeInfo, initialement expérimental en 7.1. Ce composant extrait des informations sur les types PHP à partir des arguments de méthode et des types de retour. Les modifications apportées visent à simplifier la reconnaissance des types, notamment les types nullable. Dorénavant, le TypeInfo n'est plus considéré comme expérimental et peut être utilisé en toute sécurité sans risque de changements disruptifs.

"
Dev back

PHP 8.4: Curl: New `CURLOPT_TCP_KEEPCNT` option

La version 8.4 de PHP introduit une nouvelle option dans l'extension Curl, `CURLOPT_TCP_KEEPCNT`, qui permet de définir le nombre maximum de probes TCP keep-alive. Cette option offre une meilleure gestion des connexions TCP et est compatible avec libcurl 8.9.0 ou supérieure, mais ne peut pas être rétro-portée vers les anciennes versions de PHP.

"
Dev back

PHP 8.4: Curl: New `CURLOPT_SERVER_RESPONSE_TIMEOUT` option to replace `CURLOPT_FTP_RESPONSE_TIMEOUT`

La nouvelle option `CURLOPT_SERVER_RESPONSE_TIMEOUT` dans l'extension Curl de PHP 8.4 permet de définir un délai d'attente pour la réponse d'un serveur, applicable à plusieurs protocoles. Bien que cette option soit introduite pour remplacer `CURLOPT_FTP_RESPONSE_TIMEOUT`, la compatibilité avec les versions antérieures est maintenue. Cela a pour but de renforcer l'efficacité et la gestion des délais d'expiration dans les applications PHP utilisant Curl.

"
Dev back

PHP 8.4: Curl: New `CURLOPT_DEBUGFUNCTION` option

La version PHP 8.4 introduit une nouvelle option CURLOPT_DEBUGFUNCTION pour Curl, permettant d'émettre des informations de débogage supplémentaires durant les requêtes Curl. Cette option offre la possibilité de définir une fonction de rappel personnalisée pour traiter ces informations, permettant un meilleur contrôle sur la façon dont les informations de débogage sont gérées, en plus des constantes ajoutées pour indiquer le type de données transmises.

"
Dev back

PHP 8.4: Curl: New `CURLOPT_PREREQFUNCTION` option

La version PHP 8.4 introduit une nouvelle option dans l'extension Curl, appelée `CURLOPT_PREREQFUNCTION`, qui permet de définir un rappel pour décider si une requête doit être poursuivie ou abandonnée après l'établissement de la connexion initiale. Cette fonctionnalité est utile pour éviter les requêtes sur des adresses IP intranet ou des pays sanctionnés. Trois nouvelles constantes sont également ajoutées pour faciliter cette gestion. Cette fonctionnalité nécessite une version de libcurl 7.80.0 ou supérieure et ne peut pas être rétroportée à des versions PHP antérieures.

"
Dev back

PHP 8.4: Curl: `curl_getinfo` - `CURLINFO_POSTTRANSFER_TIME_T` support

PHP 8.4 introduit des améliorations pour la fonction `curl_getinfo`, permettant de récupérer le temps d'envoi des données avec l'option `CURLINFO_POSTTRANSFER_TIME_T`, si le système utilise libcurl 8.10.0 ou supérieur. La fonction renvoie un tableau d'informations sur la requête, incluant un nouvel élément indiquant le temps d'envoi en microsecondes. Cette mise à jour permet des mesures plus précises lors de l'upload de fichiers à distance, malgré un impact théorique minimal sur la compatibilité avec les versions antérieures de PHP tant que la Curl extension est utilisée correctement.

"
Dev back

PHP 8.4: Curl: `CURLOPT_DNS_USE_GLOBAL_CACHE` no longer has any effect

La version PHP 8.4 ne permet plus l'utilisation de l'option CURLOPT_DNS_USE_GLOBAL_CACHE dans l'extension Curl, en raison de problèmes de sécurité liés à la non-sécurité des threads. PHP émettra un avertissement pour les constructions thread-safe empêchant cette option. Il est conseillé de partager le cache DNS entre les requêtes en utilisant des objets spécifiques et en s'appuyant sur le résolveur DNS du système pour une compatibilité et une gestion standard du cache.

Dev back

New in Symfony 7.2: New Command Options (Symfony Blog)

La version 7.2 de Symfony introduit de nouvelles options de commande améliorant la gestion des variables d'environnement, la récupération des statistiques des messages, les codes de sortie lors du déchiffrement des secrets, et la gestion des messages échoués. Ces améliorations visent à offrir une meilleure expérience au développeur tout en réduisant les erreurs liées aux configurations manquantes.

Dev back

PhpStorm 2024.3 Is Now Available | The PhpStorm Blog

La version 2024.3 de PhpStorm est désormais disponible, incluant des fonctionnalités pour le support de PHP 8.4 comme les hooks de propriétés, la visibilité asymétrique, et de nouvelles fonctions de tableau. La mise à jour améliore aussi l'Assistant IA de JetBrains, ajoutant des suggestions de code avec surlignage syntaxique et la gestion des erreurs SQL. Les utilisateurs peuvent désormais générer des descriptions pour les demandes de tirage directement depuis l'IDE.