上級 › __toString未実装のオブジェクトを文字列化した原因 › パターン3
__toString未実装のオブジェクトを文字列化した原因
__toString()メソッドを持たないオブジェクトを文字列と連結したり、文字列として出力しようとしたりすると致命的エラーになります。
1 <?php 2 class Distance { 3 public function __construct(public int $meters) {} 4 } 5 $d = new Distance(150); 6 echo "Length: " . ___________________; ^
Fatal error: Uncaught Error: Object of class Distance could not be converted to string in main.php:6
空欄を埋めて実行を通す
Distanceは__toString()を実装していないため、オブジェクト自体を文字列連結に使うと致命的エラーになります。$d->metersのような値を使います。
次の問題