Heim >Backend-Entwicklung >PHP-Tutorial >Wie funktionieren Nullable-Typen in PHP7 und höher?

Wie funktionieren Nullable-Typen in PHP7 und höher?

Susan Sarandon
Susan SarandonOriginal
2024-12-06 09:59:14373Durchsuche

How Do Nullable Types Work in PHP7 and Beyond?

Nullable-Typen in PHP7: Die Fragezeichen verstehen

PHP7 führte zuvor das Konzept der Nullable-Typen ein, gekennzeichnet durch das Fragezeichen (?). eine Typdeklaration (?string, ?int). Diese Typen ermöglichen, dass ein Wert entweder der angegebene Typ oder null sein kann.

Parameter

Wenn ein Parameter als nullbar markiert wird, bedeutet dies, dass die Funktion beides akzeptieren kann angegebener Typ oder null als Argument. Beispiel:

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

In diesem Fall kann die Funktion entweder eine Zeichenfolge oder Null für $parameter1 empfangen, $parameter2 muss jedoch eine Zeichenfolge sein.

Rückgabetyp

Nullable-Typen können auch für Rückgabewerte verwendet werden. Dies zeigt an, dass die Funktion entweder den angegebenen Typ oder Null zurückgeben kann. Zum Beispiel:

function error_func(): int {
    return null; // Invalid in PHP7.1+
}

function valid_func(): ?int {
    return null; // Valid in PHP7.1+
}

Eigenschaftstyp (PHP7.4)

PHP7.4 führte nullfähige Typen für Eigenschaftsdeklarationen ein. Dadurch kann eine Eigenschaft entweder der angegebene Typ oder null sein.

Nullable Union Types (PHP8)

In PHP8 sind nullable Types eine Abkürzung für die Vereinigung des angegebenen Typ und null. Zum Beispiel:

private ?object $bar = null; // PHP7.1+
private object|null $baz = null; // PHP8+

Fehlerbehandlung

In PHP7.0 und früher führt die Verwendung des Fragezeichens vor einer Typdeklaration zu einem Syntaxfehler. PHP7.1-Versionen akzeptieren Nullable-Typen.

Referenzen

  • [Nullable-Typen](https://www.php.net/manual/en/ language.types.declarations.php#lingual.types.declarations.nullable)
  • [Klasseneigenschaftentyp Deklarationen](https://www.php.net/manual/en/sprache.oop5.properties.php#sprache.oop5.properties.declare)
  • [Nullable Union Type](https://wiki .php.net/rfc/union_types_v2)

Das obige ist der detaillierte Inhalt vonWie funktionieren Nullable-Typen in PHP7 und höher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn