-
- class person{
- public function __destruct() {
- echo "
デストラクタはここで実行されます"
- echo "
これは一般的に使用される場所です、データベースを閉じる、ファイルを閉じるなど、作業を終了します ";
- }
- }
- $p = new person();
- for ($i = 0; $i echo "< ; br /> $i";
- }
- //オブジェクトは php プログラムが終了する前に破棄されます。
- ?>
-
コードをコピー
オブジェクトがポイントされていない場合、オブジェクトは破棄されます。
-
-
- class person {
- public function __destruct() {
- echo "
デストラクタはここで実行されます"
- echo "
ここで一般的に使用されます配置、データベースを閉じる、ファイルを閉じるなど。 ";
- }
- }
- $p = new person();
- $p = null;
- //ここでデストラクターが実行されていることがわかります。
- for ($i = 0; $i echo "
$i"
- ?>
-
-
コードをコピー
Set $p Assign $p が空の場合、または 11 行目の場合は文字列。$p が指すオブジェクトはガベージ オブジェクトになります。
PHP はこのオブジェクトをガベージ破壊します。
変数の設定を解除する
class person {
- public function __destruct() {
- echo "
デストラクタはここで実行されます "
- }
- }
- $ p = new person();
- $p1 = $p; //このオブジェクトを指すように新しい参照変数 $p1 を設定します
- unset($p);
- echo "/$p が破棄され、オブジェクトがまた破壊されましたか?";
- for ($i = 0; $i echo "
$i"; - }
- unset($p1);
- echo "ここで、デストラクターが実行されます。";
- ?>
-
-
-
コードをコピー
参照変数を設定解除すると、オブジェクトではなくオブジェクトを指す変数が破棄されます。
|