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

伊谢尔伦
リリース: 2023-03-12 09:00:02
オリジナル
1333 人が閲覧しました

この記事では、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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!