ابهام در یک مثال کتاب

[right]

با سلام

در کتاب

agile web application …

فصل ششم صفحه ی 135 بنده یک مثال رو متوجه نمی شم




	public function getStatusText ()

	{

		$statusOptions=$this->statusOptions;

		return isset($statusOptions[$this->status_id]) ? $statusOptions[$this->status_id] : "unknow status ({$this->status_id})";

	}



متغییر یا متد

statusOptions

در این کلاس وجود ندارد و به جای آن متد

getStatusOptions

وجود دارد

چگونه این متد فراخوانی می شود و خطایی رخ نمی دهد

[/right]

[font="Tahoma"][rtl]

چک نکردم ولی همینجوری یه جدسی میزنم میتونی بررسیش کنی.

به طور کلی عرض میکنم:

statusOptions به صورت یک property در کلاس تعریف شده (یعنی تنها یک متغییره به این اسم فانکشن پیدا نمیکنی)

getStatusOptions به صورت یک method در کلاس تعریف شده (یعنی یک فانکشن است که مقدار متغییر قبلی رو برمیگردونه)

شاید یه چیزی شبیه به این باشه:[/rtl]




class me {

    public $statusOptions;

    public function getStatusOptions() {

   	 return $this->statusOptions;

    }

}



[rtl]در نتیجه هر دو نتیجه مشابه رو برمیگردونند:[/rtl]




echo $this->statusOptions;

echo $this->getStatusOptions();

[rtl]

البته به وجود و عدم وجود پرانتز آخر خط توجه کنید.

تشکر

[/rtl][/font]