الدرس السابع: الدوال (Functions) في PHP
في الدرس ده، هنتكلم عن الدوال (Functions) في PHP. الدوال بتسمحلك تجمع كود معين وتعيد استخدامه في أماكن مختلفة من ال برنامج بدل ما تكتب نفس الكود كل مرة. الدوال بتسهل تنظيم الكود وتخليه أكتر وضوحًا وقابل للتعديل.
إيه هي الدالة؟
الدالة هي مجموعة من التعليمات اللي بتتنفذ لما تستدعيها بالاسم. الدالة ممكن تاخد مدخلات (معاملات) وترجع قيمة في النهاية.
إنشاء دالة في PHP
تقدر تنشئ دالة في
PHP باستخدام الكلمة المحجوزة function
، وبعدين تكتب اسم الدالة، وبعدها قوسين يحتويان على أي معاملات (اختيارية). تعالوا نشوف مثال:
<?php function sayHello() { echo "أهلاً وسهلاً!"; } sayHello(); // استدعاء الدالة ?>
في المثال ده، أنشأنا دالة اسمها sayHello
اللي بتطبع "أهلاً وسهلاً!" لما تستدعيها. استدعينا الدالة باستخدام sayHello()
.
دوال بمدخلات (معاملات)
الدوال ممكن تاخد مدخلات (معاملات) عشان تشتغل على بيانات معينة. تعالوا نشوف مثال لدالة بتاخد مدخل:
<?php function greet($name) { echo "أهلاً يا " . $name . "!"; } greet("أحمد"); // استدعاء الدالة مع تمرير الاسم ?>
في المثال ده، أنشأنا دالة اسمها greet
بتاخد متغير $name
كمدخل وبتطبع رسالة ترحيب مخصصة بالاسم. لما استدعينا الدالة ومررنا اسم "أحمد"، طبع "أهلاً يا أحمد!".
دوال بمدخلات افتراضية
ممكن كمان تحدد قيم افتراضية للمدخلات في حالة عدم تمرير قيمة أثناء استدعاء الدالة. تعالوا نشوف مثال:
<?php function greet($name = "زائر") { echo "أهلاً يا " . $name . "!"; } greet(); // هيطبع "أهلاً يا زائر!" greet("أحمد"); // هيطبع "أهلاً يا أحمد!" ?>
في المثال ده، حددنا القيمة الافتراضية لـ$name
بـ "زائر". لما استدعينا الدالة من غير ما نمرر قيمة، طبع الرسالة الافتراضية "أهلاً يا زائر!". ولو مررنا قيمة، زي "أحمد"، بتطبع الاسم المخصص.
إرجاع قيمة من الدالة
الدوال ممكن كمان ترجع قيمة باستخدام return
. تعالوا نشوف مثال لدالة بترجع حاصل ضرب رقمين:
<?php function multiply($a, $b) { return $a * $b; } $result = multiply(3, 4); // هيبقى $result = 12 echo $result; ?>
في المثال ده، عندنا دالة اسمها multiply
بتاخد مدخلين $a
و$b
وبتضربهم في بعض وترجع النتيجة. استخدمنا return
عشان نرجع النتيجة، وبعدين خزناها في المتغير $result
.
ملخص الدرس
- اتعلمنا يعني إيه دالة (Function) وإزاي ننشئها في PHP.
- اتعرفنا على استخدام الدوال بمدخلات (معاملات) وأزاي نحدد قيم افتراضية.
- اتعلمنا إزاي نرجع قيم من الدوال باستخدام
return
.
في الدرس اللي جاي، هنتكلم عن نطاق المتغيرات (Variable Scope) وإزاي نتحكم في المتغيرات داخل وخارج الدوال.