ホームページ  >  記事  >  バックエンド開発  >  PHPクラスの自動ロード動作を理解する方法

PHPクラスの自動ロード動作を理解する方法

伊谢尔伦
伊谢尔伦オリジナル
2017-07-01 10:12:381291ブラウズ

この記事では、PHP クラスの自動ロード 操作を主に紹介し、PHP クラスの自動ロード操作に関連する機能と実装テクニックをサンプルの形で詳細に分析します。この記事の例では、PHP クラスのロード操作の自動ロードについて説明します。参考のために皆さんと共有してください。詳細は次のとおりです:

クラスの自動ロード

外部ページでは、クラスファイルを導入する必要はありませんが、プログラムはクラスファイルを導入するときに自動的にクラスを「動的にロード」します。それはそれが必要です。

オブジェクト作成時

クラス名を直接使用してnew

②を使用する


オートロードマジック関数を使用する

の2つの場合発生時にこの関数が呼び出されます。この関数は事前に定義し、クラス ファイルをロードするための一般的なステートメントを記述する必要があります。autoload() を置き換える関数を複数登録 (宣言) する必要があります。定義されており、関数の機能は autoload() と同じですが、今回はより多くの状況に対応できます

function autoload($name){
  require './lib/'.$name.'.class.php';
}
rree

プロジェクトシナリオアプリケーション

//注册用于自动加载的函数
spl_autoload_register("model");
spl_autoload_register("controll");
//分别定义两个函数
function model($name){
  $file = './model/'.$name.'.class.php';
  if(file_exists($file)){
    require './model/'.$name.'.class.php';
  }
}
//如果需要一个类,但当前页面还没加载该类
//就会依次调用model()和controll(),直到找到该类文件加载,否则就报错
function controll($name){
  $file = './controll/'.$name.'.class.php';
  if(file_exists($file)){
    require './controll/'.$name.'.class.php';
  }
}

以上がPHPクラスの自動ロード動作を理解する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。