‎‎سازنده شئPHP OOP -‎Constructor

Previous >    <Next  

‎هنگاميكه ميخواهيد شئي ايجاد كنيد، تابع سازنده درصورت وجود، مقاديرويژگي هاي مندرج در ‎ new classname()‎‎‎دريافت ،وآنها را در ايجاد شي بكار ميگيرد.

‎اگر در كلاس، تابع‎__construct( )‎ ايجاد شود، در هنگام ايجاد شئPHP بصورت ‎اتوماتيك ‎آنرا اجرا مينمايد .توجه داشته باشيد كه تابع فوق با دو زيرخط‎"__‎"‎ ‎شروع ميگردد.

‎‎مثال ـ در مثال زير تابع سازنده باعث ميشود، كه از متدset_name()‎ رها شويم ونيازي بآن نباشد.

<?php 
class Fruit {
  public $name;
  public $color;

  function __construct($name) {
    $this->name = $name;
  }
  function get_name() {
    return $this->name;
  }
}

$apple = new Fruit("Apple");
echo $apple->get_name();
?> 

--(go to editor for change code and run)

‎مثال ـ در اين مثال تابع سازند داراي دو پارامتر يا دو ويژگي شئ ميباشد، كه درهنگام ايجاد شئ ‎ويژگي مروطه توسط تابع سازنده ،هم مقدار دهي ميشود.

<?php 
class Fruit {
  public $name;
  public $color;

  function __construct($name, $color) {
    $this->name = $name;
    $this->color = $color;
  }
  function get_name() {
    return $this->name;
  }
  function get_color() {
    return $this->color;
  }
}

$apple = new Fruit("Apple", "red");
echo $apple->get_name();
echo "<br>";
echo $apple->get_color();
?> 

--(go to editor for change code and run)

‎درايجاد شئ‎$apple‎ با دستور زير دو پارامترآن به تابع سازنده منتقل ميشود،وآن تابع ‎ويژگي هاي نام ورنگ را مقداري دهي ميكند.

‎‎ $apple=new frute(‎"Apple‎",‎"red‎");‎‎

‎نكته ـ در حالتي كه كلاس داراي تابع سازنده است .بايد در هنگام ايجاد شئ ، پارامترهاي ‎فراخواني كلاس با تابع سازنده تطبيق داشته باشد، در غير اينصورت پيغام خطا داده ميشود.


Previous >    <Next