この記事の例では、php マジック変数の使用法について説明します。そのうちの __DIR__ は php5.3 で新しく追加されたものであり、参考のために皆さんと共有されています。具体的な使用状況の分析は次のとおりです:
システム定数
__FILE__ 現在のファイル名
__LINE__ 現在の行番号
__FUNCTION__ 現在の関数名
__CLASS__ 現在のクラス名
__METHOD__ 現在のオブジェクトのメソッド名
詳細な分析
1. __ファイル__
ファイルのフルパスとファイル名。インクルードされたファイル内で使用された場合、インクルードされたファイルの名前を返します。 PHP 4.0.2 以降、__FILE__ には常に絶対パス (シンボリック リンクの場合は解決された絶対パス) が含まれますが、それより前のバージョンには相対パスが含まれる場合がありました。
PHP 定数 dirname(__file__)
__FILE__: PHP マジック定数として知られ、現在実行中の PHP スクリプトの絶対パスを含む完全なパスとファイル名を返します
1) dirname(__FILE__) 関数は、スクリプトが配置されているパスを返します。 ネットワークを更新します
たとえば、ファイル b.php には次のコンテンツが含まれています:
現在のファイル名は返されません。 dirname(__FILE__) は . (現在のディレクトリ) を返すこともあります [その理由は、b.php ファイルが http.conf または PHP 構成開発環境のデフォルトの WEB ディレクトリにあるためです
4. __機能__と__メソッド__
__FUNCTION__: 関数名、php5 で返される結果は大文字と小文字が区別されます
__METHOD__: メソッド内の関数名。php5 で返される結果は大文字と小文字が区別されます
どちらも取得方法の名前です。違いは何ですか?
5. __DIR__
ファイルが配置されているディレクトリ。インクルードされたファイル内で使用された場合、インクルードされたファイルが配置されているディレクトリを返します。これは dirname(__FILE__) と同等です。ルート ディレクトリでない限り、ディレクトリ名には末尾のスラッシュは含まれません。 (PHP 5.3.0の新機能)
5.3 より前のバージョンで __DIR__ を使用したい場合は、次のようにすることができます
現在の名前空間の名前 (大文字と小文字が区別されます)。この定数はコンパイル時に定義されます (PHP 5.3.0 の新機能)
7. __静的__
クラスの静的メソッドを呼び出すと、大文字と小文字が区別されてクラス名が返されます。継承で呼び出された場合は、継承で定義されているかどうかに関係なく、継承されたクラス名を返すことができます。
__construct() オブジェクトをインスタンス化するとき、オブジェクトのこのメソッドが最初に呼び出されます。
__destruct() このメソッドは、オブジェクトが削除されるとき、またはオブジェクトの操作が終了するときに呼び出されます。
存在しないプロパティを読み取ろうとすると、__get() が呼び出されます。
存在しないプロパティに値を書き込もうとすると、__set() が呼び出されます。
__call() このメソッドは、オブジェクトに存在しないメソッドを呼び出そうとしたときに呼び出されます。
オブジェクトを印刷するときに __toString() が呼び出されます
オブジェクトのクローン作成時に __clone() が呼び出されます
__isset()
__unset()
__autoload($classname)
__睡眠()
__ウェイクアップ()
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。