ホームページ >バックエンド開発 >PHPチュートリアル >PHP のマジック関数とマジック定数の概要_PHP チュートリアル
オブジェクトをインスタンス化するときに呼び出されます。__constructとクラス名と関数名の関数が同時に存在する場合、__constructが呼び出され、もう一方は呼び出されません。
オブジェクトが削除されるか、オブジェクトの操作が終了するときに呼び出されます。
オブジェクトがメソッドを呼び出します。 メソッドが存在する場合は、それを直接呼び出します。 存在しない場合は、__call 関数が呼び出されます。
オブジェクトのプロパティを読み取るとき、 属性が存在する場合は、属性値が直接返されます。 存在しない場合は、__get 関数が呼び出されます。
オブジェクトのプロパティを設定するとき、 属性が存在する場合は、それを直接割り当てます。 存在しない場合は、__set 関数が呼び出されます。
オブジェクトを印刷するときに呼び出されます。 echo $obj; や print $obj; など
__クローン()__睡眠()
__ウェイクアップ()
__isset()
__unset()
__set_state()
__autoload()
__ファイル__
__機能__
__クラス__
__方法__
Php5.0 は、リリース以来、多くのオブジェクト指向機能、特にコーディングを簡素化し、システムをより適切に設計できるようにする多くの使いやすいマジック メソッドを提供してきました。今日はphp5.0が提供するマジックメソッドについて学びます。
__get() は、存在しないプロパティを読み取ろうとしたときに呼び出されます。
オブジェクトに存在しないプロパティを読み取ろうとすると、PHP はエラー メッセージを表示します。クラスに __get メソッドを追加すると、この関数を使用して Java のリフレクションと同様のさまざまな操作を実装できます。
リーリー
は出力されます: 名前は存在しません__set() は、存在しないプロパティに値を書き込もうとするときに呼び出されます。
リーリー
は次のように出力されます: aninggo という名前に価値を加えます__call() このメソッドは、オブジェクトに存在しないメソッドを呼び出そうとしたときに呼び出されます。
リーリー
プログラムは次を出力します: 呼び出そうとしている getName メソッドは存在しません。パラメータは次のとおりです:
リーリー
__toString() はオブジェクトを印刷するときに呼び出されますこのメソッドは、Java の toString メソッドに似ています。この関数は、オブジェクトを直接出力するときに呼び出されます。 リーリー
echo $t; を実行すると、出力のために $t->__toString(); が呼び出されます。 : 印刷テスト
__clone() はオブジェクトのクローン作成時に呼び出されます
リーリープログラム出力: コピーされました
http://www.bkjia.com/PHPjc/752480.html