ホームページ > php教程 > php手册 > PHP オブジェクト指向ガイド (17) クラスの自動ロード

PHP オブジェクト指向ガイド (17) クラスの自動ロード

WBOY
リリース: 2016-06-13 12:21:39
オリジナル
914 人が閲覧しました

クラスを自動的にロードする
多くの開発者がオブジェクト指向アプリケーションを作成する場合、クラス定義ごとに PHP ソース ファイルを作成します。大きな
の煩わしさは、各スクリプトの先頭にインクルード ファイルの長いリスト (クラスごとに 1 つのファイル) を書かなければならないことです。
ソフトウェア開発システムでは、PHP ファイルにすべてのクラスを記述することは不可能です。PHP ファイル
が別のファイルで宣言されたクラスを呼び出す必要がある場合、このファイル インポートを含める必要があります。しかし、
多くのファイルを含むプロジェクトでは、必要なクラスのすべてのファイルを 1 つずつインクルードするのは面倒なことがあります。そのため、
任意のクラスを使用できますか? 次に、このクラスがある場所に PHP ファイルをインポートします。位置した?これが、
ここで説明する自動読み込みクラスです。
PHP5 では、__autoload() 関数を定義できます。この関数は、まだ定義されていないクラスを使用しようとしたときに自動的に呼び出されます。この関数を呼び出すことで、PHP がエラーで失敗する前に、スクリプト エンジンが最後の関数を取得します。必要なクラスをロードする機会。
__autoload() 関数によって受け取られる 1 つのパラメータは、ロードするクラスのクラス名です。そのため、プロジェクトで作業するときは、特定のルールに従う必要があります。
クラスのファイル名を定義する場合、ルールに従って、クラス名を中心に置くことが最善です。また、xxx_classname.php、classname_xxx などの統一されたプレフィックスまたはサフィックスを追加することもできます。 php や classname.php など。
この例では、MyClass1.php ファイルと MyClass2.php ファイルからそれぞれ MyClass1 クラスと MyClass2 クラスをロードしようとします
コード スニペット


コードをコピーしますコードは次のとおりです。

function __autoload($classname) {
require_once $classname . '.php'
}
// MyClass1 クラスは、__autoload() 関数を自動的に呼び出すために存在しません。パラメーター "MyClass1" を渡します。
$obj = new MyClass1()
//MyClass2 クラスは存在しません。自動的に __autoload() 関数を呼び出します。パラメータ「MyClass2」を渡します
$ obj2 = new MyClass2()>?

;

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート