الجزء الخامس – الدوال (Functions) في PHP – سلسلة FSWD – PHP

الدوال هي وسيلة لتنظيم الكود في أجزاء صغيرة قابلة لإعادة الاستخدام. باستخدام الدوال، يمكنك تجنب تكرار الكود وتحسين هيكل البرنامج.
أولاً: تعريف دالة في PHP
الدالة هي مجموعة من الأوامر التي تنفذ بمجرد استدعاء اسم الدالة. في PHP، يتم تعريف الدالة باستخدام الكلمة المفتاحية function
، ثم اسم الدالة، ثم الأقواس.
الخطوات لتعريف دالة
<?php
// تعريف دالة بسيطة
function greet() {
echo "مرحبًا بك في PHP!";
}
// استدعاء الدالة
greet(); // سيطبع مرحبًا بك في PHP!
?>
في المثال أعلاه، تم تعريف دالة اسمها greet
، وعند استدعاء الدالة باستخدام greet()
، سيتم تنفيذ الكود داخل الدالة.
ثانيًا: تمرير القيم للدالة (Parameters and Arguments)
عند تعريف الدالة، يمكنك تحديد المتغيرات التي ستستقبلها الدالة. هذه المتغيرات تسمى Parameters (المعلمات). وعند استدعاء الدالة، يتم تمرير القيم إلى هذه المعلمات. هذه القيم تسمى Arguments.
تمرير القيم إلى الدالة (Parameters)
<?php
// تعريف دالة تأخذ معلمات
function greet($name, $age) {
echo "مرحبًا، اسمي $name وأنا في $age من العمر.";
}
// استدعاء الدالة مع تمرير القيم
greet("Ahmed", 25); // سيطبع مرحبًا، اسمي Ahmed وأنا في 25 من العمر.
?>
في المثال أعلاه، الدالة greet
تأخذ معلمين: $name
و $age
. عند استدعاء الدالة، نقوم بتمرير القيم "Ahmed"
و 25
كـ arguments.
تمرير قيمة افتراضية (Default Values)
يمكنك تحديد قيمة افتراضية لأي معلمة، بحيث إذا لم يتم تمرير قيمة عند استدعاء الدالة، سيتم استخدام القيمة الافتراضية
<?php
// تعريف دالة مع قيمة افتراضية
function greet($name = "Guest") {
echo "مرحبًا، اسمي $name.";
}
// استدعاء الدالة مع قيمة افتراضية
greet(); // سيطبع مرحبًا، اسمي Guest.
// استدعاء الدالة مع تمرير قيمة
greet("Ahmed"); // سيطبع مرحبًا، اسمي Ahmed.
?>
ثالثًا: قيمة الإرجاع (Return Values)
الدوال في PHP يمكنها إرجاع قيمة باستخدام الكلمة المفتاحية return
. عندما تستدعي دالة تحتوي على return
، ستعيد قيمة هذه الدالة وتوقف تنفيذها.
مثال على دالة مع return
<?php
// تعريف دالة مع قيمة إرجاع
function add($a, $b) {
return $a + $b;
}
// استدعاء الدالة وتخزين النتيجة في متغير
$result = add(5, 3);
echo "النتيجة هي: $result"; // سيطبع النتيجة هي: 8
?>
في المثال أعلاه، دالة add
تقوم بإرجاع ناتج جمع المتغيرين $a
و $b
. عند استدعاء الدالة، يتم حفظ النتيجة في المتغير $result
ويتم طباعة النتيجة.
رابعًا: الدوال المدمجة (Built-in Functions)
PHP تأتي مع مجموعة كبيرة من الدوال المدمجة التي يمكن استخدامها مباشرة بدون الحاجة لتعريفها. هذه الدوال تساعد في معالجة البيانات بسهولة.
مثال على استخدام بعض الدوال المدمجة:
-
دالة
strlen()
: تُستخدم لحساب طول النص
<?php
$text = "Hello, world!";
$length = strlen($text);
echo "طول النص هو: $length"; // سيطبع طول النص هو: 13
?>
دالة array_push()
: تُستخدم لإضافة عنصر إلى نهاية المصفوفة.
<?php
// تعريف مصفوفة
$fruits = array("apple", "banana");
// إضافة عنصر إلى المصفوفة باستخدام array_push
array_push($fruits, "orange");
// طباعة المصفوفة
print_r($fruits);
// سيطبع:
// Array ( [0] => apple [1] => banana [2] => orange )
?>
دالة count()
: تُستخدم لحساب عدد العناصر في المصفوفة.
<?php
$fruits = array("apple", "banana", "orange");
$count = count($fruits);
echo "عدد الفواكه هو: $count"; // سيطبع عدد الفواكه هو: 3
?>
مثال كامل
إليك مثال كامل يجمع بين تعريف الدوال، تمرير القيم، والقيم المفقودة (default values)، واستخدام الدوال المدمجة:
<?php
// 1. تعريف دالة بدون معلمات
function greet() {
echo "مرحبًا في عالم PHP!<br>";
}
// استدعاء الدالة
greet(); // سيطبع مرحبًا في عالم PHP!
// 2. تعريف دالة مع معلمات
function greetUser($name, $age) {
echo "مرحبًا، اسمي $name وأنا في $age من العمر.<br>";
}
greetUser("Ahmed", 25); // سيطبع مرحبًا، اسمي Ahmed وأنا في 25 من العمر.
// 3. تعريف دالة مع قيمة افتراضية
function greetWithDefault($name = "Guest") {
echo "مرحبًا، اسمي $name.<br>";
}
greetWithDefault(); // سيطبع مرحبًا، اسمي Guest.
greetWithDefault("Sara"); // سيطبع مرحبًا، اسمي Sara.
// 4. دالة مع قيمة إرجاع
function multiply($x, $y) {
return $x * $y;
}
$product = multiply(4, 5);
echo "النتيجة هي: $product<br>"; // سيطبع النتيجة هي: 20
// 5. استخدام دوال مدمجة
$text = "PHP is awesome!";
echo "طول النص هو: " . strlen($text) . "<br>"; // سيطبع طول النص هو: 16
// 6. التعامل مع المصفوفات
$fruits = array("apple", "banana");
array_push($fruits, "orange");
echo "المصفوفة بعد إضافة عنصر: ";
print_r($fruits); // سيطبع المصفوفة بعد إضافة عنصر: Array ( [0] => apple [1] => banana [2] => orange )
echo "<br>عدد الفواكه هو: " . count($fruits) . "<br>"; // سيطبع عدد الفواكه هو: 3
?>
التفسير:
-
تعريف الدوال: قمنا بتعريف دوال بدون معلمات، مع معلمات، ومع قيم افتراضية.
-
تمرير القيم وإرجاع القيم: أظهرنا كيفية تمرير القيم إلى الدوال واستخدام
return
لإرجاع القيم. -
استخدام الدوال المدمجة: استخدمنا بعض الدوال المدمجة في PHP مثل
strlen()
,array_push()
, وcount()
💰 هل تبحث عن طريقة سهلة للربح من الإنترنت؟
ابدأ الآن واكسب أموالًا حقيقية من خلال خطوات بسيطة! 🌟
اضغط وابدأ الربح