未定義のクラスを使用しようとすると、PHP は致命的なエラーを報告します。解決策は、ファイルに含めることができるクラスを追加することです。ただし、PHP にはクラスの自動ロード機能が備わっています。この関数は、プログラミング時間を節約できます。PHP が編成していないクラスを使用しようとすると、グローバル関数 __autoload が検索されます。この関数が存在する場合、PHP はその関数の名前であるパラメーターを使用してそれを呼び出します。
例 6.15 は、現在のディレクトリ内の各ファイルがクラスに対応することを前提としています。 class_User を想定します。 .php に User クラスが定義されています。呼び出しが大文字か小文字かに関係なく、PHP は小文字の名前を返します。
リスト 6.15 クラスの自動ロード
//自動ロード関数を定義します
function __autoload($class)
{
include("class_" . ucfirst($class) . ".php");
// 自動ロードする必要があるクラスを使用します
$u = new User;
$u->name = "Leon";
?>