PHP の OO モードを使用してシステムを開発する場合、通常は各クラスの実装を別のファイルに保存するのが一般的です。これにより、クラスの再利用が容易になり、将来のメンテナンスにも便利になります。これは、OO デザインの基本的な考え方の 1 つでもあります。 PHP5 より前では、クラスを使用する必要がある場合、include/require を使用してクラスを直接インクルードするだけで済みます。
以下は実際的な例です:
function __construct ($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
/* no_autoload.php */
require_once ("person.class.php");
$person = new Person("Altair", 6);
var_dump ($person);
?>
しかし、プロジェクトの規模が拡大し続けると、この方法を使用するといくつかの隠れた問題が発生します。PHP ファイルが他の多くのクラスを使用する必要がある場合、多くの require/include ステートメントが必要になり、省略や不要なインクルードが発生する可能性があります。クラスファイル。多数のファイルで他のクラスの使用が必要な場合、各ファイルに正しいクラス ファイルが含まれていることを確認するのは悪夢のような作業になります。
PHP5 は、クラスの自動読み込み (オートロード) メカニズムというこの問題の解決策を提供します。オートロード機構により、PHP プログラムは最初からすべてのクラス ファイルを組み込むのではなく、クラスが使用される場合にのみクラス ファイルを自動的に組み込むことができます。この機構は遅延ロードとも呼ばれます。
以下は、自動ロード メカニズムを使用して Person クラスをロードする例です:
$person = new person("Altair", 6);
var_dump ($person);
?>