PHPでCannot redeclare ~ (previously declared in ~)in ~
PHPで見慣れないエラーが出たのでメモ
Fatal error: Cannot redeclare myFunc() (previously declared in ~) in ~
「その関数は既に宣言されてるから再宣言はできないよ!」
ってことらしい。
コードを見なおしてみるとループの中で関数を宣言していた。
関数の宣言をループの外でしてあげれば済む話なんだけどそうはしたくない・・・
そんな時はfunction_exists()で関数が既に宣言されているかどうか調べる。
bool function_exists(string $function_name)
こんな感じでループの中で関数を宣言しても大丈夫
$i = 0; while($i < 10){ if(!function_exists('myFunc')){ function myFunc(){} } $i++; }