Logo Lex Connect Web Hosting - Dark Version

Les nouveautés dans PHP 8.2 : nouvelles fonctionnalités, obsolescences et corrections de bugs

Php 8.2

PHP 8.2 arrive bientôt. La sortie est prévue pour le 24 novembre.

PHP 8.2 vise à faciliter la vie des développeurs. La plupart des modifications simplifient le processus de codage et rendent obsolètes certaines anciennes fonctionnalités. C’est toujours une bonne idée de mettre à jour vers la dernière version de PHP pour optimiser la sécurité de votre site Web et vous familiariser avec la nouvelle syntaxe. Jetons un coup d’œil à tous les changements apportés par PHP 8.2. De cette façon, lorsqu’une nouvelle version sort, vous pouvez décider si elle vaut la peine d’être mise à jour.

Cette section passe en revue les modifications et les nouvelles fonctionnalités introduites dans PHP 8.2.

nouvelle classe en lecture seule
Une nouvelle propriété de classe en lecture seule est apparue dans la version 8.1. PHP 8.2 est encore meilleur. Des classes entières peuvent désormais être déclarées en lecture seule. Par conséquent, toutes les propriétés de cette classe seront en lecture seule. Cela ne fonctionne pas pour les propriétés dynamiques. Déclarer en lecture seule provoquera une erreur.

Nouvelles classes à lecture seule

 déclaration de la classe ressemblait autrefois à ceci :

class ReadOnlyClass
{
public readonly int $number,
public readonly int $anotherNumber
}

Avec PHP 8.2, le processus a été profondément simplifié :

class ReadOnlyClass
{
public int $number,
public int $anotherNumber
}

Gardez à l’esprit qu’il ne sera pas possible de déclarer les fonctionnalités PHP suivantes :

  • Enums – puisqu’ils ne peuvent pas du tout contenir de propriétés.
  • Traits.
  • Interfaces.
Php 8.2

Autoriser true, null et false en tant que types autonomes
PHP 8.0 a introduit la prise en charge des utilisateurs pour les types d’union. Un type peut être déclaré comme une union de deux types ou plus. Vous pouviez utiliser false et null comme types possibles, mais vous n’étiez pas autorisé à les utiliser comme types autonomes.

PHP 8.2 autorisera false et null en tant que types distincts. Cet ajout rend le système de types de PHP plus significatif et vous permet de déclarer plus précisément les types pour les valeurs de retour, les paramètres et les propriétés. Prise en charge des valeurs de paramètres sensibles
PHP permet à l’utilisateur de tracer la pile d’appels à tout moment du programme. Ceci est particulièrement utile lorsque vous déboguez votre application et que vous souhaitez savoir pourquoi elle a échoué. Cependant, certaines traces de pile peuvent contenir des informations sensibles que vous souhaitez masquer.

PHP 8.2 ajoute un nouvel attribut appelé SensitiveParameter. Empêchez l’affichage ou l’enregistrement d’informations sensibles lorsqu’une application rencontre un problème. En pratique ça ressemble à ça :

function passwords(
$publicpassword,
#[\SensitiveParameter] $secretpassword
) {
throw new \Exception(‘Error’);
}
passwords(‘publicpassword’, ‘secretpassword’);

Faites connaître votre entreprise en ligne avec un domaine personnalisé.

Nouveaux types de formes normales disjonctives (DNF)

Avec PHP 8.2, vous pourrez utiliser une nouvelle fonctionnalité de types Disjunctive Normal Form (DNF). Il s’agit d’une manière normalisée d’organiser les expressions booléennes. Pour être exact, il s’agit d’une disjonction de conjonctions ou simplement d’un OU booléen de ET.

Fonctionnalités obsolètes en PHP 8.2

Cette section décrit toutes les fonctionnalités obsolètes dans PHP 8.2.

Fonctions #utf8_encode() et utf8_decode()

Les fonctions utf8_encode() et utf8_decode() sont utilisées pour convertir les normes d’encodage ISO-8859-1 et UTF-8. En raison d’un manque de messages d’erreur, d’avertissements, et d’un support limité de l’encodage, PHP 8.2 va déprécier ces fonctions, tandis que PHP 9.0 les exclura entièrement. Par ailleurs, les utilisateurs pourront utiliser les extensions iconv ou intl pour convertir la norme d’encodage. 

Mbstring : Encodages d’entités Base64, Uuencode, QPrint et HTML

Mbstring est utilisé pour convertir depuis et vers plusieurs normes de codage de caractères telles qu’UTF-8/16/32 et ISO-8859-1.  Il prend également en charge les entités Base64, Quoted-Printable, Uuencode et HTML.

Toutefois, ces formats traitent les informations sous forme d’octets bruts et non de séquences d’octets. Il est aussi intéressant de noter que PHP dispose déjà de fonctions distinctes pour coder/décoder ces formats. Ainsi, PHP 8.2 va déprécier l’extension mbstring avec les encodages étiquetés suivants :

  • BASE64
  • UUENCODE
  • HTML-ENTITIES
  • html (alias de HTML-ENTITIES)
  • Quoted-Printable
  • qprint (alias de Quoted-Printable)

Conclusion

PHP 8.2 a de nombreuses améliorations par rapport aux versions précédentes. De nombreuses nouvelles fonctionnalités ont été introduites telles que B. Une classe en lecture seule. Il supprime plusieurs implémentations obsolètes avec une syntaxe complexe et corrige des bogues importants pour rationaliser le flux de développement et rendre PHP plus convivial.

Nous espérons que cet article vous aidera à vous préparer pour la prochaine version de PHP 8.2. Nous attendons avec impatience la sortie de la nouvelle version le 24 novembre.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Abonnez-vous, restez dans le coup !

recevoir les nouveautés

On Trend

Articles Populaires