Maison >développement back-end >tutoriel php >Comment fonctionnent les types nullables en PHP et quelles sont les règles de syntaxe ?

Comment fonctionnent les types nullables en PHP et quelles sont les règles de syntaxe ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-09 15:14:10181parcourir

How Do Nullable Types Work in PHP, and What Are the Syntax Rules?

Types nullables en PHP 7 : Comprendre ? Avant la déclaration de type

Les types nullables sont une fonctionnalité puissante introduite dans PHP 7.1 qui vous permet de déclarer des variables, des paramètres et des valeurs de retour comme nullables. Cela signifie qu'ils peuvent accepter ou renvoyer soit le type spécifié, soit NULL.

Paramètres nullables

Utilisation d'un point d'interrogation (?) avant la déclaration de type dans la fonction paramètres indique que le paramètre peut être soit du type spécifié, soit NULL. Par exemple :

public function (?string $parameter1, string $parameter2) {}

Dans cet exemple, les deux paramètres peuvent être nullables. Vous pouvez transmettre une valeur de chaîne ou NULL comme argument à la fonction.

Types de retour nullables

De même, le type de retour d'une fonction peut être déclaré comme nullable. en utilisant la syntaxe du point d'interrogation. Cela indique que la fonction peut renvoyer soit le type spécifié, soit NULL. Par exemple :

function error_func(): int {
    return null ; // Uncaught TypeError: Return value must be of the type integer
}

function valid_func(): ?int {
    return null ; // OK
}

Types de propriétés nullables (PHP 7.4)

À partir de PHP 7.4, vous pouvez également déclarer les types de propriétés comme nullables. Cela permet aux propriétés d'avoir soit le type spécifié, soit NULL. Par exemple :

class Foo
{
    private ?object $bar = null; // OK : can be null (nullable type)
}

Nullable Union Types (PHP 8 )

PHP 8.0 a introduit une notation abrégée pour les types d'union nullables. Écrire "?T" équivaut à "T|null". Cela permet des déclarations de type plus concises.

class Foo
{
    private object|null $baz = null; // as of PHP 8.0
}

Erreur de syntaxe dans les versions PHP inférieures à 7.1

Si vous essayez d'utiliser la syntaxe du point d'interrogation avec Versions PHP inférieures à 7.1, vous rencontrerez une erreur de syntaxe. Dans de tels cas, vous devez supprimer le point d'interrogation.

Conclusion

Les types nullables offrent un moyen pratique de gérer les valeurs nullables en PHP. Ils vous permettent de déclarer qu'une variable, un paramètre ou une valeur de retour peut être soit d'un type spécifique, soit NULL, rendant votre code plus robuste et plus facile à maintenir.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn