勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

Fatal error: Cannot redeclare 関数名のエラー

   2024/05/22  PHP

PHPにて「Fatal error: Cannot redeclare 【関数名】 」エラーの原因及び対応方法をメモ。

 

原因

自作関数の名前が重複している場合に出現するエラー。具体的には以下のようなソースコード。

<?php
function hoge () {
//処理内容
}

$test = hoge();

function hoge () {
//処理内容
}
?>

 

対応方法

関数名を重複しないよう変更する。

ファイル数が多く関数名を調べるのが大変な場合はfunction_existsにて指定の関数が存在するかチェックすると良い。

 - PHP

  関連記事

PHPで複数の変数に同じ値を代入する方法(多重代入 / 一括代入 / 同時代入)
PHPで複数の変数に同じ値を代入する方法(多重代入 / 一括代入 / 同時代入)

PHPのソースコード上に「$a = $b = $c = 12;」みたいな見たこと ...

PHPで指定したディレクトリ内のファイル名を取得し、更新日時順でJSON形式にて出力する方法
PHPで指定したディレクトリ内のファイル名を取得し、更新日時順でJSON形式にて出力する方法

先日summernoteに対してギャラリー画像挿入機能を追加する方法をメモしたが ...

Ajaxでデータを受信した際にリファラのチェックをしたい
Ajaxでデータを受信した際にリファラのチェックをしたい

Ajaxでデータを受信し、MySQLにINSERTするプログラムがあった。そこま ...

PHPで引数の先頭に&(アンパサンド)をつける参照渡し(リファレンス渡し)について
PHPで引数の先頭に&(アンパサンド)をつける参照渡し(リファレンス渡し)について

他社が作成されたPHPのソースコードを拝見していると関数の引数の頭に&( ...

「lz-string」ライブラリで圧縮した文字をPHPで展開する際に文字化けする場合の対応方法
「lz-string」ライブラリで圧縮した文字をPHPで展開する際に文字化けする場合の対応方法

以前、JavaScript / PHPにて「lz-string」を用いてデータの ...