2010-12-13 11 views
0

私は、簡単な関数を実行するためにPHP関数、構文エラー?

function sayBlah() 
{ 
    return "blah"; 
} 

$sayit = sayBlah(); 

echo $sayit; 

を(擬似コード)の効果に何かをしようとしています。しかし、私は次のようなエラーメッセージが出続ける:

Fatal error: Cannot redeclare sayBlah() previously declared on line X

+5

そのコードだけではそのエラーは生成されません。あなたは過度に単純化しました。 –

+0

また、「ラインX」について調査しましたか?そしてなぜあなたは 'sayBlah'関数を呼び出しますか? – mario

+0

エラーメッセージは自明ですか?前述の位置で以前に宣言された関数を再宣言しました。 – Gumbo

答えて

3

ときにこれはおそらく引き起こされファイルを2回インクルードします。エラーメッセージの行番号が含まれているファイルに対応しているため、これは簡単なことではありません。

I.e.我々は3つのファイルを持っています。あなたは、ファイルA内の関数を宣言する場合は、二回ファイルAを含めているので、それが二回続い ファイルA. ファイルB、ファイルA. ファイルCを含み、ファイルAとファイルBを含ん

を宣言されます。一度は直接、そしてもう一度は間接的に。

これを解決するには、require_onceまたはinclude_once呼び出しごとにrequire/include呼び出しを置き換えます。

+0

これは完全にそれでした!ありがとうございました!! – redconservatory