php yıkıcı kullanabilirsiniz ne zaman?

3 Cevap

Bir yıkıcı temel amacı nedir?

i bir nesne silinir çalıştırmak isteyebilirsiniz ne herhangi örnekler verebilir misiniz?

3 Cevap

Bu nesne öldürülmek hazırlamak için bir fırsat verir. Bu vb manuel temizleme, devlet sebat, anlamına gelebilir

Örneğin, bir model geri veritabanına mevcut tüm özelliklerini kaydetmek isteyebilirsiniz.

Ya da, bir veritabanı nesnesi kendisi bir veritabanı sunucusu iletişim kurmak için kullandığı yuva kapatmak isteyebilirsiniz.

Yani, muhtemelen bir yapıcı ne yaptığını biliyoruz. Bir kurucu kurduysa, bir yıkıcı temizler. Burada PHP sitesinden bir örnek:

<?php
class my_class {
  public $error_reporting = false;

  function __construct($error_reporting = false) {
    $this->error_reporting = $error_reporting;
  }

  function __destruct() {
    if($this->error_reporting === true) $this->show_report();
    unset($this->error_reporting);
  }
?>

Here's the link konuda PHP belgelerine.

Ben bir sarıcı mysqli_result nesne için (diğer incelikler arasında, Iterator uygulanması) bir Result sınıf var demek. Benim Result nesnelerden birini yok, ben onu kullanıyordum belleği geri kazanmak için mysqli_result nesne üzerinde free() yöntemini çağırmak için emin olmak istiyorum. Yani yapmak benim Result sınıfının yıkıcı.