趣味は車輪の再発明♪

デストラクタの書き方は? - [ オブジェクト指向 / php ]


「小さな小さなサンプル&スニペット」
▲インデックスへ戻る▲
カテゴリ:「オブジェクト指向」

クラスのデストラクタの書き方です。

class MyClass extends BaseClass {

	/**
	 * PHPのデストラクタ。定義しない場合
	 */
	function __destruct() {
	
		// リソースの破棄
	
		//スーパークラスのデストラクタを明示的に呼び出す必要があります。
		parent::__destruct();
	}

}		

phpのデストラクタは __destruct() という特別な名前の関数です(php5から有効)。 参照カウントが0になったときに呼ばれます。このためインスタンス間でデストラクタの呼び出し順に依存してはいけません。 また、インスタンスを破棄する目的で明示的に呼んではいけませんが、 スーパークラスのデストラクタはデストラクタ内からから明示的に呼び出す必要があります。 デストラクタを定義しないなら、スーパークラスのデストラクタがそのまま呼ばれます。 デストラクタから例外を投入できません。オーバーロードはできません。

カテゴリ「オブジェクト指向」の他のエントリ:
| コンストラクタの書き方は? |



RSS Feed Widget
デストラクタの書き方は? - [ オブジェクト指向 / php ] 」 (http://bicycle.life.coocan.jp/takamints/index.php/snippets/snippet/oo/destructor/php)
by Koji Takami ( email: vzg03566@gmail.com, GitHub: takamin )