index.php の内容は次のとおりです:
リーリー
印刷結果は次のとおりです:
上記の内容には、名前空間を介したファイルへのアクセス、直接インスタンス化アクセス、およびこの空間での直接アクセスが含まれます。 ネームスペースの存在は、同じ名前を持つ 2 つのクラスがロードされるのを防ぐためです。ネームスペースを使用すると、サードパーティのクラスをロードするときに同じ名前の競合を回避できます。 自動読み込みについて話しましょう SPL の正式名は、Standard PHP Library です。PHP 標準ライブラリは、PHP5 以降、PHP に組み込まれており、追加のインストールは必要ありません。 SPL には、データ構造、イテレータ、例外、ファイル処理などの関数ライブラリのセットが含まれています。 自動読み込みライブラリには以下の機能があります spl_autoload_call: 登録されているすべての __autoload() 関数を呼び出してリクエスト クラスをロードしてみます。
User.php の内容は次のとおりです:
リーリー
印刷結果は次のとおりです:
SPL自動ロード機能には以下が含まれます:
spl_autoload_extensions: spl_autoload 関数で使用されるデフォルトのファイル拡張子を登録して返します。
User.phpを次のように変更します:
リーリー
印刷結果は次のとおりです:
注: SPL を使用してファイルをロードする場合、spl_autoload_register 関数をトリガーすることはできません。new によってトリガーされ、ファイルが見つからないというメッセージが表示されます。 すべては spl_autoload_call を使用して、事前に自動読み込みをトリガーします。 この記事のURL: http://www.cnblogs.com/martin-tan/p/4864539.html 質問: get_include_path、spl_autoload_extensions、spl_autoload_register がデフォルトで空の場合、上記の理由によりディレクトリ内のファイルを直接ロードできません。 (?)