phpでシステムを作成していたときに、「Fatal error: Cannot redeclare」のエラーが表示されてしまいました。
今回は、このエラーが表示される原因と対処方法について紹介していきたいと思います。
Fatal error: Cannot redeclareの原因とは?
「Fatal error: Cannot redeclare」の原因は、同じ名前の関数が複数回定義されてしまっていることです。
対処方法は?
同じ名前の関数を複数定義されている箇所を修正すれば、エラーは表示されなくなります。
とはいえ、意図せずこのエラーが出ている人も多いかと思います。
以下のような場合に、同じ名前の関数が複数回定義されていることが多いので、こちらをチェックしてみてください。
- includeしたファイルの中に、同じ名前の関数が含まれている
- 外部ファイルの中に同じ名前の関数が含まれている
- 入れ子関数により多重定義が発生している
既に読み込まれているファイルを読み込まないという特性を持つ、「include_once
」や「require_once
」を使うことで対処することもできるので、有効に活用してみてください。
コメント