Nullable-Typen sind eine leistungsstarke Funktion, die in PHP 7.1 eingeführt wurde und es Ihnen ermöglicht, Variablen, Parameter und Rückgabewerte als nullable zu deklarieren. Dies bedeutet, dass sie entweder den angegebenen Typ oder NULL akzeptieren oder zurückgeben können.
Verwendung eines Fragezeichens (?) vor der Typdeklaration in der Funktion Parameter gibt an, dass der Parameter entweder vom angegebenen Typ oder NULL sein kann. Zum Beispiel:
public function (?string $parameter1, string $parameter2) {}
In diesem Beispiel sind beide Parameter nullbar. Sie können entweder einen Zeichenfolgenwert oder NULL als Argument an die Funktion übergeben.
In ähnlicher Weise kann der Rückgabetyp einer Funktion als nullable deklariert werden unter Verwendung der Fragezeichensyntax. Dies zeigt an, dass die Funktion entweder den angegebenen Typ oder NULL zurückgeben kann. Zum Beispiel:
function error_func(): int { return null ; // Uncaught TypeError: Return value must be of the type integer } function valid_func(): ?int { return null ; // OK }
Ab PHP 7.4 können Sie Eigenschaftstypen auch als nullable deklarieren. Dadurch können Eigenschaften entweder den angegebenen Typ oder NULL haben. Zum Beispiel:
class Foo { private ?object $bar = null; // OK : can be null (nullable type) }
PHP 8.0 führte eine Kurzschreibweise für nullable Union Types ein. Das Schreiben von „?T“ entspricht „T|null“. Dies ermöglicht prägnantere Typdeklarationen.
class Foo { private object|null $baz = null; // as of PHP 8.0 }
Wenn Sie versuchen, die Fragezeichensyntax mit zu verwenden Bei PHP-Versionen unter 7.1 tritt ein Syntaxfehler auf. In solchen Fällen sollten Sie das Fragezeichen entfernen.
Nullable-Typen bieten eine praktische Möglichkeit, Nullable-Werte in PHP zu verarbeiten. Sie ermöglichen Ihnen zu deklarieren, dass eine Variable, ein Parameter oder ein Rückgabewert entweder ein bestimmter Typ oder NULL sein kann, wodurch Ihr Code robuster und einfacher zu warten ist.
Das obige ist der detaillierte Inhalt vonWie funktionieren Nullable-Typen in PHP und welche Syntaxregeln gelten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!