PHP8.1 アップデート: 新しい Nullable 型宣言
PHP8.1 は、多くの新機能と改善点を備えた待望のバージョンです。最も注目すべき新機能の 1 つは、Nullable 型宣言の追加です。以前は、PHP 変数宣言はデフォルトで null 可能でしたが、型宣言では特定の型のみを指定できました。 PHP 8.1 では、?
表記を使用して、変数が null であってもよいことを明示的に宣言できるようになりました。この新機能により、コードを記述する際の型宣言がより明確になり、コードの信頼性が高まり、潜在的なエラーが減少します。
Nullable 型宣言の使用方法を理解するための簡単な例を見てみましょう:
function getUserName(?string $name): string { if ($name === null) { return "Anonymous"; } else { return $name; } } echo getUserName(null); // 输出 "Anonymous" echo getUserName("John"); // 输出 "John"
上記のコードでは、名前付き getUserName
関数を定義します。 null 許容の文字列型パラメータ $name
。関数内では条件判定を行っており、$name
がnullの場合は文字列「Anonymous」を返し、それ以外の場合は$name
そのものを返します。 Nullable 型宣言を使用することで、この関数が null 値を受け入れることができる状況が明確になり、コードがより明確で読みやすくなります。
関数パラメータに加えて、プロパティ、戻り値、およびローカル変数宣言で Nullable 型を使用することもできます。
class Person { private ?string $name; public function __construct(?string $name) { $this->name = $name; } public function getName(): ?string { return $this->name; } public function setName(?string $name): void { $this->name = $name; } } $person = new Person("John"); echo $person->getName(); // 输出 "John" $person->setName(null); echo $person->getName(); // 输出 null
上記のコードでは、Person# を定義します。
##$name 属性が null 許容文字列型として宣言されているクラス。コンストラクター、
getName メソッドおよび
setName メソッドでは、すべて Nullable 型宣言を使用して、これらのパラメーターと戻り値が null になれることを示します。 Nullable 型宣言を使用すると、Null 値が存在する可能性がある状況をより適切に追跡し、処理できるようになります。
以上がPHP8.1 アップデート: 新しい Nullable 型宣言の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。