نمایش نتایج 1 تا 3 از 3

نام تاپیک: متدهای __construct و __destruct

  1. #1
    کاربر دائمی آواتار ravand
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    راوند کاشان
    پست
    3,378

    متدهای __construct و __destruct

    در مورد متدهای سازنده و تخریب کننده مطالب زیادی خوندم ولی هنوز توش موندم بود و نبود این متدها چه فرقی میکنه!؟
    میگن برای ابتدا و انتهای شی بکار میره. برای ساختن و خراب کردن و این حرفا!
    الان این برنامه رو ببینید:
    <?phpclass obj {   public function __construct() {     echo "a<br/>";   }   public function __destruct() {     echo "b<br/>";   }}
    $obj = new obj();echo "c<br/>";unset($obj);echo "destructed\n";?>

    بود و نبودش چه فرقی میکنه؟
    یا حتی این:
    <?php// class definitionclass Person {  // define properties  public $name;  public $weight;  public $age;  public $colour;  // constructor  public function __construct() {    $this->age = 0;    $this->weight = 8;    $this->colour = "white";  }  public function ran($miles){    echo $this->name." ran ".$miles." miles without food or water.<br/>";  }  //destructor  public function __destruct(){    echo $this->name." still weighed ".$this->weight." units and died.";  }}$thomas = new Person;$thomas->name = "Thomas";$thomas->ran(10);$thomas->ran(218);?> 

    من نمی فهمم درست این متدها توی این برنامه ها چکاری انجام میدن؟ یعنی اگه این متدها باشن یا نباشن چی میشه؟
    متشکرم.

  2. #2
    کاربر دائمی آواتار ravand
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    راوند کاشان
    پست
    3,378

    نقل قول: متدهای __construct و __destruct

    خیلی ممنون . مشکلم حل شد.
    فهمیدم تا وقتی که شی وجود داره. دستورات داخل متد destruct هست که آخراز همه نمایش داده میشه.و وقتی شی با unset حذف میشه دستوراتی که بعد از unset نوشته شده بعد از دستورات این متد destruct نمایش داده میشه.

  3. #3

    نقل قول: متدهای __construct و __destruct

    ببینید، موضوع خیلی ساده است و بیهوده دارین برای خودتون پیچیده اش میکنید:
    اگه یکسری دستورات دارین که میخواین وقتی با new یک شئ از کلاس شما ساخته میشه، اجرا بشن، اونها رو توی construct__ بگذارین.
    اگه یکسری دستورات دارین که میخواین وقتی با unset یا تمام شدن اسکریپت، شئ ساخته شده از کلاس شما از بین میره، اجرا بشن، اونها رو توی destruct__ بگذارین.
    به همین سادگی.

تاپیک های مشابه

  1. دسترسی به متدهای مخفی کنترل ها
    نوشته شده توسط MH2538 در بخش برنامه نویسی در Delphi
    پاسخ: 17
    آخرین پست: جمعه 11 آذر 1384, 16:20 عصر
  2. متدهای Virtual چه هستند؟ کاربرد آنها چیست؟ و ...
    نوشته شده توسط مهدی کرامتی در بخش برنامه نویسی در Delphi
    پاسخ: 4
    آخرین پست: سه شنبه 25 اسفند 1383, 00:33 صبح
  3. متدهای پیمایش در folder ها چیه؟
    نوشته شده توسط net_ved در بخش برنامه نویسی در Delphi
    پاسخ: 1
    آخرین پست: جمعه 16 بهمن 1383, 13:40 عصر
  4. اجرای متدهای تعریف شده در سرور روی کلاینت
    نوشته شده توسط در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 3
    آخرین پست: شنبه 16 فروردین 1382, 01:17 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •