ホームページ  >  記事  >  バックエンド開発  >  HidRegisterMinidriver PHP spl_autoload_register は自動読み込みの研究を実装します

HidRegisterMinidriver PHP spl_autoload_register は自動読み込みの研究を実装します

WBOY
WBOYオリジナル
2016-07-29 08:47:251142ブラウズ

ここではこの機能の特徴を実験を通してお話します。
関数プロトタイプ
bool spl_autoload_register ([ callback $autoload_function [, bool $throw = true [, bool $prepend = false ]]] )
バージョン互換性
PHP 5 >= 5.1.2
実験プロセス
ステップ1、使用spl_autoload_register() 関数は、load() メソッドを登録します

コードをコピーします コードは次のとおりです。 ('load') ;

?>



lib.php ファイルのコードは次のとおりです



コードをコピーします

コードは次のとおりです:

class className{ function Method(){ echo 'クラス内のメソッド '; }

}

functiononlyMethod(){
echo 'メソッドのみ';
?> クラス



コードは次のとおりです。


$class = new className();
$class->method();


出力:
クラス内のメソッドのみ
説明: className クラスをインスタンス化して、クラスを呼び出します

3 番目のステップでは、関数 onlyMethod(); を直接呼び出します。説明: インスタンス化されたクラスはありません。 lib.php ファイルのonlyMethod() 関数を呼び出します 出力: 致命的なエラー: '...(省略パス)' 内の未定義関数onlyMethod() を呼び出します 4 番目のステップ、className クラスをインスタンス化し、それを呼び出します直接

$class = new className();

onlyMethod();
出力: メソッドのみ
上記の 4 ステップの実験から、ロードされたファイルに関数が含まれている場合は内部のクラスをインスタンス化する必要があり、そうでない場合は例外が発生することがわかりました。未定義関数呼び出しエラーが発生しますので、ご使用の際はご注意ください。

参加情報: spl_autoload_register


上記は、HidRegisterMinidriver PHP spl_autoload_register の自動ロードに関する研究を紹介しており、HidRegisterMinidriver の内容も含めて、PHP チュートリアルに興味のある友人に役立つことを願っています。


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