التصريح بالدوال واستدعاؤها
جزء من قسم Fundamentals في رحلة PHP على Coddy — الدرس 61 من 71.
حتى الآن، كنت تكتب تعليمات برمجية يتم تشغيلها من الأعلى إلى الأسفل. ولكن مع نمو برامجك، ستجد نفسك تكرر نفس الكود في أماكن متعددة. تحل الدوال (Functions) هذه المشكلة من خلال السماح لك بتجميع الكود في كتل قابلة لإعادة الاستخدام.
الدالة هي كتلة برمجية مسماة تؤدي مهمة محددة. تقوم بتعريفها مرة واحدة، ثم تستدعيها كلما احتجت إلى تنفيذ تلك المهمة. في PHP، تقوم بالتصريح عن دالة باستخدام الكلمة المفتاحية function:
<?php
function sayHello() {
echo "Hello, World!\n";
}
?>هذا ينشئ دالة باسم sayHello. الكود الموجود داخل الأقواس المتعرجة هو جسم الدالة—فهو يحدد ما يحدث عند تشغيل الدالة.
ومع ذلك، فإن التصريح عن دالة لا يعني تنفيذها. لتشغيل الكود الموجود بداخلها، تحتاج إلى استدعاء الدالة باستخدام اسمها متبوعاً بأقواس:
<?php
function sayHello() {
echo "Hello, World!\n";
}
sayHello();
sayHello();
?>هذا ينتج:
Hello, World!
Hello, World!في كل مرة تستدعي فيها sayHello()، يقوم PHP بتنفيذ الكود الموجود داخل الدالة. يمكنك استدعاء الدالة لعدد المرات الذي تحتاجه، وهذا ما يجعل الدوال قوية جداً لتجنب التكرار.
التحدي
سهلاقرأ سطرًا واحدًا من المدخلات يحتوي على رقم يشير إلى عدد مرات عرض التحية (على سبيل المثال، 3).
قم بالتصريح عن دالة تسمى printWelcome تقوم بطباعة Welcome to PHP! (مع سطر جديد في النهاية).
ثم قم باستدعاء الدالة لعدد المرات المحدد باستخدام حلقة (loop).
مثال 1:
إذا كانت المدخلات 3، يجب أن تكون المخرجات:
Welcome to PHP!
Welcome to PHP!
Welcome to PHP!مثال 2:
إذا كانت المدخلات 1، يجب أن تكون المخرجات:
Welcome to PHP!مثال 3:
إذا كانت المدخلات 5، يجب أن تكون المخرجات:
Welcome to PHP!
Welcome to PHP!
Welcome to PHP!
Welcome to PHP!
Welcome to PHP!ورقة مرجعية
الدالة (Function) هي كتلة برمجية مسماة تؤدي مهمة محددة. تقوم بتعريفها مرة واحدة، ثم تستدعيها كلما دعت الحاجة.
قم بالتصريح عن الدالة باستخدام الكلمة المفتاحية function:
<?php
function sayHello() {
echo "Hello, World!\n";
}
?>استدعِ الدالة باستخدام اسمها متبوعاً بأقواس:
<?php
function sayHello() {
echo "Hello, World!\n";
}
sayHello(); // المخرجات: Hello, World!
sayHello(); // المخرجات: Hello, World!
?>يمكن استدعاء الدوال عدة مرات لتجنب تكرار الكود.
جرّب بنفسك
<?php
// قراءة عدد المرات لعرض التحية
$count = intval(fgets(STDIN));
// TODO: قم بالتصريح عن دالة تسمى printWelcome تقوم بطباعة "Welcome to PHP!" مع سطر جديد
// TODO: قم باستدعاء الدالة لعدد المرات المحدد باستخدام حلقة (loop)
?>يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4معاملات المقارنة والمنطق
معاملات المقارنةالمساواة والتطابقالمعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيط2المتغيرات وأنواع البيانات
الأرقامالنصوص وعلامات الاقتباسالقيم المنطقية (Booleans)قواعد التسميةملخص - تهيئة المتغيراتالمتغيرات الفارغةدمج النصوصاستقبال مدخلات المستخدمتحويل أنواع البيانات5المنطق الشرطي
جملة Ifجملة If - Elseالعامل الثلاثي (Ternary Operator)عامل Null Coalescingجملة Switchمراجعة - اتخاذ القرارات3المعاملات الأساسية
المعاملات الحسابيةمعامل باقي القسمةمعامل الأسالتعيين المركبالزيادة والنقصانأسبقية المعاملاتمراجعة - الحسابات البسيطةمعاملات النصوص