PHP 8 : quelles nouveautés valent vraiment la peine d'être utilisées ?

posée 2 months ago463 vuesfr

0

Je maintiens un code PHP 7.4 qu'on migre en PHP 8.3. Quelles fonctionnalités adopter en priorité pour un code plus sûr et plus lisible ?

Environnement :PHP 8.3

Diagnostic IA

Généré par IA. Ce n'est pas une réponse — la communauté ci-dessous le confirme ou le corrige. Vérifiez toujours avant de vous y fier.

posée 2 months ago

1 réponse

3
✓
✓ Réponse acceptée

Les plus rentables au quotidien :

1. Promotion des propriétés du constructeur :

class User {
  public function __construct(
    public readonly int $id,
    public readonly string $email,
  ) {}
}

2. readonly (8.1) et classes readonly (8.2) pour les objets de valeur. 3. Enums (8.1) à la place des constantes magiques :

enum Status: string { case Draft = 'draft'; case Published = 'published'; }

4. match, qui est strict et exhaustif, contrairement à switch. 5. Opérateur nullsafe $user?->profile?->city. 6. Arguments nommés : str_pad(string: $s, length: 10, pad_type: STR_PAD_LEFT). 7. Constantes de classe typées (8.3).

Pour migrer : lance Rector avec le set PHP_83 pour automatiser, puis PHPStan niveau 6+ pour attraper le reste.

Connectez-vous pour dire si ça a marché.

answered 2 months ago

Sign in and verify your email to post an answer.