ホームページ >バックエンド開発 >PHPチュートリアル >PHP spl_autoload_register は自動読み込みを実装します Research_PHP チュートリアル

PHP spl_autoload_register は自動読み込みを実装します Research_PHP チュートリアル

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-07-21 15:22:36879ブラウズ

ここでは、この機能のいくつかの特徴を実験を通して説明します。

関数プロトタイプ
bool spl_autoload_register ([ callback $autoload_function [, bool $throw = true [, bool $prepend = false ]]] )

バージョン互換
PHP 5 >= 5.1.2

実験プロセス
最初のステップ、spl_autoload_register() 関数を使用して、load() メソッドを登録します

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



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


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

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

functiononlyMethod(){
echo 'メソッドのみ'
?> php ファイルは className クラスとonlyMethod 関数です

2 番目のステップ、自動的にロードされたクラスを呼び出します



コードをコピーします

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

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

出力: クラス内のメソッド メソッドのみ 命令: className クラスをインスタンス化し、クラスのメソッド() 関数を呼び出し、同時に出力は正常であり、エラーは発生しません。
3 番目のステップは、関数

onlyMethod( : 4 つのステップで、className クラスをインスタンス化し、次に

$class = new className(); を直接呼び出します。
onlyMethod();

出力: メソッドのみ

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


参加情報: spl_autoload_register




http://www.bkjia.com/PHPjc/324679.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/324679.html

技術記事

ここでは、この機能のいくつかの特徴を実験を通して説明します。 関数プロトタイプ bool spl_autoload_register ([ callback $autoload_function [, bool $throw = true [, bool $prepend = false ]]...

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