أهلا وسهلا بك زائرنا الكريم في منتدى دعم PBBoard الرسمي، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .

دورة OOP خاص بالمنتدى ! الجزء الرابع من هذه الدورة تعلمنا حتى الأن : ماهو الكائن وماهي

الجزء الرابع من هذه الدورة تعلمنا حتى الأن : ماهو الكائن وماهي أهميته و ماهي أركانه وكيف نكتبه ! ماهي الخصائص و الأساليب كيف نعرّف الكائن أو ك



look/images/icons/i1.gif دورة OOP خاص بالمنتدى !
  05-09-2010 09:23 مساءً  
معلومات الكاتب ▼
انضم في : 02-08-2009
رقم العضوية : 78
المشاركات : 245
الدولة : الجمهورية العربية السورية
الجنس :
تاريخ الميلاد : 2-12-1990
قوة السمعة : 678
الجزء الرابع من هذه الدورة
تعلمنا حتى الأن :
ماهو الكائن وماهي أهميته و ماهي أركانه وكيف نكتبه !
ماهي الخصائص و الأساليب
كيف نعرّف الكائن أو كيف نشغل الكائن

الأن سنتعلم عن الجزء this وهي دالة معرفة تكتب بالشكل $this
ماهي وظيفة this ??
وظيفة الدالة this هي أنها توضع ضمن الكائن لتنفيذ أمر موجود ضمن الكائن نفسه مثال :
CODE
 
<? 
function Ahmad() 
{ 
echo " أنا اسمي أحمد"; 
} 

Class Power{ 
function Ahmad() 
{ 
echo " أنا اسمي مالك"; 
} 
function DoAhmad() 
{ 
Ahmad(); 
} 
} 
$Power = new Power; 
$Power->DoAhmad(); 
?>


في المثال السابق لدينا دالتين كلاهما لهما الاسم Ahmad احداهما خارج الكائن وهي العبارة القائلة
(أنا اسمي أحمد ) والأخرى داخل الكائن واسمها (انا اسمي مالك )
طيب يوجد ضمن الكلاس أو الكائن دالة أخرى وهي DoAhmad وظيفتها هي طبع الدالة Ahmad
blink blink blink وهنا يأتي السؤال ؟؟؟ أي دالة Ahmad ستقوم بطبعها ؟؟ الدالة الواقعة ضمن الكلاس
أما التي تقع خارجه ؟؟؟
الجواب : ستقوم بطباعة الدالة التي تقع خارج الكلاس أي سيظهر على المتصفح (أنا اسمي أحمد )
ذلك لأننا كتبنا الدالة بهذا الشكل ضمن DoAhmad كتبنا :
Ahmad();
لذا تلقائيا سيتم تنفيذ الدالة الخارجية
طيب واذا اردت طباعة الدالة الموجودة داخل الكلاس ؟؟
خذ هذا المثال وقارن بينه وبين السابق :
CODE
 
<? 
function Ahmad() 
{ 
echo " أنا اسمي أحمد "; 
} 

Class Power{ 
function Ahmad() 
{ 
echo " أنا اسمي مالك "; 
} 
function DoAhmad() 
{ 
$this->Ahmad(); 
} 
} 
$Power = new Power; 
$Power->DoAhmad(); 
?>


ستلاحظ الأن بأنه سيظهر على المتصفح (أنا اسمي مالك blink ) لماذا ؟؟
لأنني استخدمت $This ضمن الدالة DoAhmad فكتبت ضمنها :
CODE
$this->Ahmad(); 

اذا بالتلخيص :
this وضيفتها تنفيذ دالة موجودة الكائن ....

أي سؤال أنا جاهز cool



الساعة الآن 10:19 PM