Constructor چیست؟
Constructor تابعی است که در هنگام ایجاد کلاس به صورت اتوماتیک فراخوانی می شود و می توان توسط آن تنظیمات اولیه همانند ایجاد ارتباط با دیتابیس و یا کارهای مشابه را انجام داد.
در PHP 4 سازنده تابعی می باشد که نام آن همان نام کلاس می باشد و در PHP 5 تابعی است که با نام"construct__" می باشد.
مثال1: در مثال زیر به دو روش، تابع سازنده تعریف شده است:
<?php
class className{
function __construct()
{
echo 'className created from PHP5 format';
}
function className()
{
echo 'className created from PHP4 format';
}
}
$a=new className();
؟>
خروجی کد بالا:
اگر در PHP 5 اجرا شود خروجی آن className created from PHP5 format خواهد بود و اگر در PHP 4 اجرا شود خروجی آن className created from PHP4 format خواهد بود.
توجه: در PHP 5 چنانچه تابع construct__ وجود نداشته باشد مدل PHP 4 آن اجرا خواهد شد.
مثال2:
<?php
class My_class
{
public $name;
function __construct($Param="Amir")
{
$this->name=$Param;
}
function SayHello()
{
print "Hello My Name is $this->name"."<br />";
}
}
$obj1=new My_Class();
$obj1->SayHello();
$obj2=new My_Class("Reza");
$obj2->SayHello();
?>
خروجی کد بالا:
Amir
Reza
همانطور که دیدید در مثال بالا یک سازنده ساختیم و مقدار دیفالتش را روی "Amir" گذاشتیم که اگر هیچی وارد نشد این عبارت چاپ بشود.