クラスを外部ファイルで定義する際の注意(>自分用)
PHPでは一般的に、ファイル中でクラスの宣言は、実行文の後でも大丈夫だ。たとえば、こんなの。
$obj = new hoge; class hoge {}
しかし、クラスが外部ファイルで定義されている場合、以下のようにするとエラーが出るので注意する。
$obj = new foo; require_once 'class.foo.php';
また、外部ファイルで定義されたクラスを継承する場合も、以下はエラーが出る。
require_once 'class.foo.php'; $obj = new bar; class bar extends foo {}
このように、クラス定義の後に実行文を置くこと。
require_once 'class.foo.php'; class bar extends foo {} $obj = new bar;