上級 › nullになりうるプロパティへのメソッド呼び出しは ?-> で守る › パターン5
nullになりうるプロパティへのメソッド呼び出しは ?-> で守る
途中のプロパティがnullかもしれないオブジェクトの連鎖に対して、通常の->でメソッドを呼ぶと致命的エラーになります。
1 <?php 2 class Cart { 3 public ?Discount $discount = null; 4 } 5 class Discount { 6 public function getRate(): string { return "10%"; } 7 } 8 $c = new Cart(); 9 echo $c->discount___getRate(); ^
Fatal error: Uncaught Error: Call to a member function getRate() on null in main.php:9
空欄を埋めて実行を通す
$c->discountがnullのまま->でメソッドを呼ぶと致命的エラーです。
次の問題