これは前に、これが原因となっている理由がわかっています。しかし、私の場合、問題はMacOS Lion(10.7)でのみ発生しています。これは、PHP 5.3.6です。同じコードベースがPHP 5.3.8のWindows 7マシンで実行されています。致命的なエラー:クラスDbBaseを再宣言できません
私はどこでもrequire_onceを使用しました。この問題を引き起こしていると思われるコードの一部は、複数のファイルからなるファイルに、
class DbBase
{
...
}
です。
ファイルDBBase.php:
defines Class DBBase
ファイルA_DB.php:
require_once("DBBase.php")
私はこのシナリオを持っている
if (class_exists('DbBase') != true)
{
class DbBase
{
...
}
}
:私は内部クラス宣言をラップする場合は、エラーが消えます
ファイルB_DB.php:
require_once("DBBase.php")
ファイルfoo.php:
require_once("A_DB.php")
require_once("B_DB.php)
ので、ファイルDBBase.phpが二度含まれますありません。それは?
洞察が得意です。
「クラスを再宣言できません」というエラーは、このクラスによって宣言されていない可能性があります。完全なエラーメッセージとそれが参照するファイル/行を投稿することをお勧めします。 – StasM
あなたは正しい、私の謝罪です。問題のコードは実際にはクラス定義です。しかし、if(class_exists( 'ClassName')!= true)でクラス定義をラップしない限り、エラーは消えません。 –