Zend::loadClass($class, $dirs) は、
PHP ファイルを読み込んで、クラスが存在するかどうかを確かめます。
<?php
Zend::loadClass('Container_Tree', array('/home/production/mylib', (/home/production/myapp')));
?>
まず $class をパス階層に変換します。
つまり、アンダースコアをパス区切り文字に変換します。
その後、この階層が $dirs の各要素の後に追加されます。
$dirs が null の場合は、その結果はひとつの階層だけとなります。
たとえば、Container_Tree は Container/Tree.php となります。
/home/production/mylib/Container/Tree.php が存在した場合は、それを読み込みます。
存在しなければ、次に /home/production/myapp/Container/Tree.php
を探し、見つかった場合にそれを読み込みます。それでも見つからなかった場合は、
PHP のインクルードパスから Container/Tree.php を探します。
$dirs に文字列あるいは配列を指定すると、
指定した順にそのディレクトリを探します。そして最初に見つかったファイルを読み込みます。
ディレクトリ $dirs にファイルがみつからない場合は、PHP の include_path
を用いて include 文で読み込みます (つまり include 'Tree.php')
となります。
ファイルが見つからない場合、あるいは読み込んだファイルにクラスが存在しない場合は
Zend_Exception をスローします。読み込みには
Zend::loadFile() を使用するので、クラス名として指定できるのは
英数字とハイフン ('-')、アンダースコア ('_') そしてピリオド ('.') だけです。