PHP5 のマジックメソッド

WBOY
リリース: 2016-08-04 08:53:12
オリジナル
1136 人が閲覧しました

魔法の機能

1. __construct()
はオブジェクトをインスタンス化するときに呼び出されます
__construct とクラス名と関数名の関数が同時に存在する場合、__construct が呼び出され、もう一方は呼び出されません。

2. __destruct()
オブジェクトが削除されるか、オブジェクトの操作が終了するときに呼び出されます。

3. __call()
オブジェクトは特定のメソッドを呼び出します
メソッドが存在する場合は直接呼び出されます
存在しない場合は __call 関数が呼び出されます。

4. __get()
オブジェクトの属性を読み取る場合、
属性が存在する場合は属性値が直接返されます。
存在しない場合は __get 関数が呼び出されます。

5. __set()
オブジェクトの属性を設定する場合、
属性が存在する場合は値が直接割り当てられます。
存在しない場合は __set 関数が呼び出されます。

6. __toString()
オブジェクトを印刷するときに呼び出されます。 echo $obj; や print $obj; など

7. __clone()

オブジェクトのクローンを作成するときに呼び出されます。例: $t=new Test();$t1=clone $t;

8. __sleep()

はシリアル化の前に呼び出されます。オブジェクトが比較的大きく、シリアル化する前に少し削除したい場合は、この関数を検討できます。

9. __wakeup() は、シリアル化解除時に呼び出され、オブジェクトの初期化作業を実行します。


10. __isset()

オブジェクトの属性が存在するかどうかをチェックするときに呼び出されます。例: isset($c->name)。


11. __unset()

オブジェクトのプロパティの設定を解除するときに呼び出されます。例: unset($c->name)。


12. __set_state()

var_export が呼び出されたときに呼び出されます。 __set_state の戻り値を var_export の戻り値として使用します。


13. __autoload()

オブジェクトをインスタンス化する際、対応するクラスが存在しない場合、このメソッドが呼び出されます。


魔法定数

1. __LINE__

ファイル内の現在の行番号を返します。


2. __FILE__

ファイルのフルパスとファイル名を返します。インクルード ファイルで使用された場合は、インクルード ファイル名を返します。 PHP 4.0.2 以降、__FILE__ には常に絶対パスが含まれますが、それより前のバージョンには相対パスが含まれる場合がありました。


3. __FUNCTION__

関数名を返します (PHP 4.3.0 で新しく追加されました)。 PHP 5 以降、この定数は定義されたとおりの関数名を返します (大文字と小文字は区別されます)。 PHP 4 では、この値は常に小文字です。


4. __CLASS__

クラスの名前を返します (PHP 4.3.0 の新機能)。 PHP 5 以降、この定数は定義されたときのクラスの名前を返します (大文字と小文字は区別されます)。 PHP 4 では、この値は常に小文字です。


5. __METHOD__

クラスのメソッド名を返します (PHP 5.0.0 で新しく追加されました)。定義されたとおりのメソッド名を返します (大文字と小文字が区別されます)。


(1) マジックメソッドの最初の紹介

Php5.0 は、リリース以来、多くのオブジェクト指向機能を提供してきましたが、特に使いやすいマジックメソッドの多くは、コーディングを簡素化し、コーディングをより便利にシステムを設計します。今日はphp5.0が提供するマジックメソッドについて学びます。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート