もくじ
Fatal error: Cannot redeclare
Cannot redeclare … 再度宣言できません。
原因
関数名が2重定義されている。
解決方法
重複している関数の箇所を確認し、重複しないように名前を変更する
Trying to get property ‘xxx’ of non-object
原因
- オブジェクトにxxxプロパティがない。
- nullに対してプロパティ参照をしてしまった
解決方法
オブジェクトのプロパティを参照する前に前提条件を確認してから、プロパティ参照する。
if (is_null($object)) { return; } $xxx = $object->xxx;
if (isset($object->xxx)) { $xxx = $object->xxx; }
$xxx = $object->xxx ?? null;
Call to a member function xxx() on null
Call to a member function xxx() on array
原因
- オブジェクトにxxx()メソッドが定義されていない
- 変数がnullやarrayであり、オブジェクトではない
解決方法
- 変数がnullやarrayになってしまっているか確認
- 変数にオブジェクトがきちんと代入されているか確認