آموزش مفاهیم پایه شی گرایی در PHP (جلسه اول)
|
01-28-2013, 03:14 PM
ارسال: #2
|
|||
|
|||
RE: آموزش مفاهیم پایه شی گرایی در PHP (جلسه دوم)
()construct__
تابعی که با این نام باشه هنگام ساختن یک شی از کلاس بطور خود کار اجرا میشه ()destruct__ تابعی که با این نام باشه هنگامی که شما عملیاتتون با شی تموم بشه بطور خود کار اانجام می شه ::self با این متد می تونید از داخل کلاس یک تابع از کلاس رو صدا بزنید ::parent این متد به کلاس والد اشاره می کنه .. زمانی که شما یک کلاس رو فرزند کلاس دیگری قرار بدید با یک مثال ساده کار رو شروع می کنیم. به کد زیر نگاه کنید کد php: <?php خروجی کد php: construct همون طور که می بینید با اینکه ما فقط یک شی رو به یک متغیر نسبت دادیم باز هم متد construct__ اجرا شد . حالا اگه این تابع construct__ چند تا آرگمان در ابتدا از ما بخواد باید چطوری این آرگمان ها رو مقدار دهی بکنیم ؟ حالا به کد زیر نگاه کنید کد php: <?php و خروجی : کد php: Ali پس اگر تابع construct__ در ابتدا نیاز به آرگمان داشت می بایست در هنگام تعریف شی آرگمان رو مقدار دهی کرد. وگر نه شما با خطایه کد php: Warning: Missing argument 1 for Myclass::__construct(), called in FILE ADRESS on line LINE NUMBER and defined in FILE ADRESS on line LINE NUMBER ر PHP 4 شما می تونید بجای استفاده از construct__ از نام کلاس به عنوان نام تابع استفاده کنید و این تابع هم مانند construct __ عمل خواهد کرد. کد php: <?php باز هم خروجی Ali خواهد بود. (این قابلیت در php 5 هم support می شود) حالا به این کد نگاه کنید : کد php: <?php خروجی : کد php: AliAkbar همون طور که دید باز هم فقط متغیر رو به شی نسبت دادیم ولی پس از پایان اسکریپت تابع destruct__ عمل کرد و خروجی رو تغییر داد . شاید این سوال براتون پیش بیاد که در هر بار استفاده از شی در پایان destruct__ اجرا می شه ؟ جواب منفی هست و با این کد ثابتش می کنیم کد php: <?php خروجی : کد php: Ali$Akbar اگر هر بار بعد از استفاده از شی destruct__ اجرا می شد باید دوبار Akbar چاپ می شد اما دیدید که این طور نبود. حالا به این کد نگاه کنید : کد php: <?php خروجی : $ همون طور که دید ما از داخل تابع Myclass تابع t_empty رو صدا زدیم. شما می تونید با استفاده از این متد به دیگر توابع دسترسی داشته باشید و آنها رو اجرا کنید. اما ::parent قبل از توضیح parent باید به شما یاد بدم که چطوری یک کلاس رو والد کلاس دیگری قرار بدیم . به این کد نگاه کنید : کد php: <?php همون طور که می بینید ما اینجا 2 کلاس داریم. کلاس B فرزند کلاس A هست. در مثال کاملا واضح هست که توسط extends یک کلاس رو فرزند کلاس دیگری قرار دادیم. و توسط متد ::parent تابع example کلاس مادر رو صدا زدیم . فکر نمی کنم مطلبی مونده باشه .. با آرزوی موفقیت برای شما |
|||
|
پیامهای داخل این موضوع |
آموزش مفاهیم پایه شی گرایی در PHP (جلسه اول) - agotd - 01-27-2013, 04:56 PM
RE: آموزش مفاهیم پایه شی گرایی در PHP (جلسه دوم) - agotd - 01-28-2013 03:14 PM
آموزش مفاهیم پایه شی گرایی در PHP (جلسه سوم) - agotd - 01-31-2013, 03:18 PM
|
کاربرانِ درحال بازدید از این موضوع: 1 مهمان