|
|
الرئيسيه » لغـــات البرمجـــــــه » دورة لغة البرمجة php لعام 2010عنوان الدرس :: الدرس الرايع : الدوال Functionsالسلام عليكم ورحمة الله وبركاته نستكمل سويا دروس دورة ترايدنت المفتوحة التى ابتدأناها سويا فى معهدنا الغالى ترايدنت والآن سنقدم الدرس الثالث بعنوان اتخاذ القرارات وحلقات التكرار وتتمثل محاور الحديث على : السادة أعضاء ترايدنت تحيه طيبه اليكم
1- مقدمه عن الدوال : ببساطه شديده يمكن توصيف الدوال بجهاز المحمول فأنت تعطى جهازك المحمول الطاقه متمثله فى الكهرباء لكى يعمل . ويمكن توصيفها بالمطهى فانت تعطى المطهى الطعام والطاقه لكى يرجعه لك مطهيا . كذلك الدوال فأنت تعطيها مجموعه من المتغيرات لتعود اليك بقيمه أخرى بعد اجراء مجموعه من العمليات بداخل الداله . فاذا تحدثنا عن الدوال فاننا نضع قدميك على اولى الخطوات لكتابة كود ذو كفاءه عاليه . تقوم الدوال بتوفير وقت وجهد كبيرين على المبرمج . فمثلا أنت تريد أنت تقوم بعمليه ما فى عدد كبير من الصفحات . فمن المفترض أنك ستكتب كود برمجى وتضعه فى كل صفحه من تلك الصفحات . ولكن باستخدام الدوال فانك ستقوم بكتابة الكود مره واحده فقط ثم تقوم باستدعاء الداله لتنفيذ ما بداخلها من الكود . ولنفترض أنك فى الحاله الاولى بدون استخدام الدوال وحدث أنك تريد ان تعدل على الكود الخاص بالعمليه ستكون عمليه مرهقه جدا للتعديل على كل الصفحات المتواجد بها الكود ![]() ولكن باستخدام الدوال فانك ستعدل الكود مره واحده فقط . 2- أنواع الدوال : فى تحدثنا عن الدوال من حيث التصنيف الرئيسى تنقسم الدوال الى :
كما تحدثنا فى السطور السابقه عن ذلك النوع من الدوال ولها أنواع كثيره جدا منها :
http://www.php.net/manual/en/funcref.php وسنسرد طوال سير الدوره الدوال المدمجه التى يتم استخدامها . 4- الدوال التى يتم تعريفها من قبل المبرمج : وهى دوال يقوم المبرمج بكتابتها لتنفيذ مهام معينه لا يمكن للدوال المدمجه تنفيذها ويتم استدعاؤها تقريبن بنفس الطريقه التى يتم بها استدعاء الدوال المدمجه وهى أولى الخطوات التى ستخطوها لكى تبدأ بكتابة كود ذو كفاءة عاليه. وتلك الدوال توفر على المستخدم مئات السطور ومئات العمليات من القص واللصق . فكما ذكرنا سابقا المثال الذى قال : فمثلا أنت تريد أنت تقوم بعمليه ما فى عدد كبير من الصفحات . فمن المفترض أنك ستكتب كود برمجى وتضعه فى كل صفحه من تلك الصفحات . ولكن باستخدام الدوال فانك ستقوم بكتابة الكود مره واحده فقط ثم تقوم باستدعاء الداله لتنفيذ ما بداخلها من الكود . تفيد الدوال المعرفه من قبل المبرمج فيما يلى :
5- كيف تقوم بكتابة داله وكيف تقوم باستدعاءها : لكى نقوم بكتابة داله معينه يجب أن نتبع عدة قواعد بسيطه وهى :
رمز PHP:
وسنكتب مكان Variable1 المتغيرات التى سيتم ارسالها للداله لكى تقوم بمهامها عليها . وسنكتب مكان نكتب هنا الأوامر والعمليات الأوامر التى ستقوم الداله بتنفيذها وسنكتب مكان variable2 القيمه التى ترجعها الداله بعد اجراء العمليات عليها . واليك بمثال : داله تقوم بحساب مجموع عددين يرسل اليها : رمز PHP:
وقمنا بتسميتها plus وبين القوسين المتغيرات التى سيستخدمها فى حساباته وهم $digit1 والمتغير $digit2 وفى السطر التالى قام بعمل العمليات الحسابيه على المتغيرين وخزن ما نتج به فى متغير يسمى $total وبعد ذلك وضح أن القيمه التى ستعود هى قيمة المتغير $total لسبقه بكلمة return الآن قمت بكتابة داله فكيف أقوم باستدعاؤها وتنفيذها فى برامجى ؟؟ والآن يأتى السؤال الذى يطرح نفسه : نقوم بالاستدعاء بكتابة اسم الداله ثم ترسل لها قيم المتغيرات التى ستقوم بالعمليات عليها فقط مثال لاستدعاء الداله السابقه : رمز PHP:
وأرسلنا الى الداله المتغيران واحد واثنان كمتغيرات للداله ولاحظ أننا أرسلنا متغيران لأن الداله الأصليه يجب أن يرسل اليها متغيران فى الأساس . الى حد هنا ستقوم الداله الأصليه بعمل العمليات الحسابيه على المتغيران وترجع الناتج فقمنا باستخدام echo لكى تقوم بطباعة ما نتج من تلك العمليه . يفضل أن تقوم بكتابة دوال بيدك وتستدعيها بمختلف المهام 6-المتغيرات (معاملات الازاحه) للدوال والقيم الافتراضيه للمعاملات: تحدثنا سابقا بالمثال السابق عن المتغيرات (معاملات الازاحه) ولكن ما هي القيم الافتراضيه لها ؟؟؟ نفترض أنك قمت بكتابة داله مثل المتواجده بالأعلى لها معاملات ازاحه وعند استدعاءها قمت بارسال اليها متغير واحد فقط بدلا من ارسال المتغيران فسيظهر لك رسالة خطأ مشابهه لتلك : Warning: Missing argument 2 for plus(), called in C:\AppServ\www\123.php on line 7 and defined in C:\AppServ\www\123.php on line 2 1 ولكى نفهم الموضوع تماما اليك تطبيق القيم الافتراضيه على المثال السابق . ولكى تجعل دالتك تعمل فى أى حاله من الحالات سواء ارسلت لها قيمه أم لم ترسل فتريد أن تحدد قيمه افتراضيه للمتغير تريد الداله أن تعمل فى حالة ارسال قيمته أو لم ترسل قيمته فهذا هو ما يسمى القيم الافتراضيه لمعاملات الدوال وهى أن تحدد قيمة افتراضيه للمتغيرات (معاملات الازاحه) لكى يجعلها كقيمه للمتغير فى حال لم ترسل اليها قيمته . رمز PHP:
وعن طريقة الاستدعاء فيمكنك أن تستدعى بأى طريقة من الطرق التاليه : رمز PHP:
7- القيم الراجعه من الدوال (مخرجات الدوال): يمكن نظريا تقسيم القيم الراجعه من الدوال الى قسمين : القسم الأول : باستخدام العباره return وهو ما اشرنا اليه سابقا القسم الثانى : باستخدام العباره echo أو print وعادة تستخدم هذا اذا كان المخرج هو كود html الى هنا ينتهى بنا المطاف للدرس الرابع والى لقاء قريب بالدرس الخامس باذن الله دروس سابقه :
MR.Electronic , Aymen123 , أرجو أن أكون قد قدمت لكم الدرس بشكل واضح ومفهوم واذا كان هناك شئ يشوبه الغموض لا تتردد فى وضع استفسارك تقبلوا تحياتى Mr.Ajax شكر الى آخر الدروس في قسم دورة لغة البرمجة php لعام 2010: |