上級 › Cannot modify readonly property の原因と直し方 › パターン4
Cannot modify readonly property の原因と直し方
readonlyを付けたプロパティは、コンストラクタの中で一度初期化した後は二度と値を変更できません。
1 <?php 2 class Book { 3 public function __construct( 4 public readonly string $isbn, 5 public int $stock 6 ) {} 7 } 8 $b = new Book("111", 5); 9 $b->______ = 99; ^
Fatal error: Uncaught Error: Cannot modify readonly property Book::$isbn in main.php:9
空欄を埋めて実行を通す
$isbnはreadonlyなので、コンストラクタで初期化した後は二度と代入できません。書き換えたい値は$stockのようなreadonlyでないプロパティにする必要があります。
次の問題