【PHP】デストラクタ __destructを使うとインスタンスは破棄されるの意味がわかりません。

PHP | プログラミング10閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

0

ThanksImg質問者からのお礼コメント

おふた方ともわかりやく具体的に教えてくださりありがとうございました。イメージ出来るようになりました。

お礼日時:6/25 12:02

その他の回答(1件)

0

わかりやすいのは $p = new Person('田中', '幸太郎'); $p->show(); $p = null; $p1 = new Person('鈴木', '京子'); $p1->show(); などとしてみることですかね。null がセットされたタイミングでインスタンスが破棄されます。逆に言えばそうしない限りはスクリプトの終了時にまとめて破棄されます。 そういう意味ではfopenしたファイルハンドルなどのリソースと同じようなものですね。明示的に(null をセットして)破棄しなくても、最終的にはスクリプトが面倒みてくれています。 とはいえ一定の処理を終えたら要らなくなったものは破棄する(そうしないと落ち着かない)という「習慣」になっている人も多いですよね(汗