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