If Statement

في لغة PHP، يُقصد بـ “Control Flow” أو “تدفق التحكم” مجموعة التعليمات التي تتحكم في ترتيب تنفيذ الكود بناءً على شروط معينة أو حلقات تكرار.
سنتناولها بشكل تفصيلي حسب الأنواع التالية:

✅ 1. التحكم بالشروط (Conditional Statements)
✳️ if Statement
$age = 20;

if ($age >= 18) {
    echo "أنت بالغ.";
}
PHP

شرح: يتم تنفيذ الكود داخل if فقط إذا تحقق الشرط $age >= 18.

✳️ if…else Statement
$age = 16;

if ($age >= 18) {
    echo "أنت بالغ.";
} else {
    echo "أنت قاصر.";
}
PHP

شرح: إذا لم يتحقق شرط if يتم تنفيذ الكود داخل else.

✳️ if…elseif…else Statement
$mark = 75;

if ($mark >= 90) {
    echo "ممتاز";
} elseif ($mark >= 75) {
    echo "جيد جداً";
} elseif ($mark >= 60) {
    echo "جيد";
} else {
    echo "راسب";
}
PHP

شرح: يتم فحص الشروط بالترتيب، وينفذ أول شرط يتحقق فقط.

✳️ Ternary Operator (الشرط المختصر)
$age = 20;
echo ($age >= 18) ? "بالغ" : "قاصر";
PHP

شرح: بديل مختصر لـ if...else.

✳️ null coalescing operator (??)

$username = $_GET['user'] ?? 'ضيف';
echo $username;
PHP

شرح: إذا كانت القيمة الأولى غير معرفة أو null يتم استخدام القيمة بعد ??.

✳️ match (PHP 8+)
$grade = 'B';

$result = match($grade) {
    'A' => 'ممتاز',
    'B' => 'جيد جداً',
    'C' => 'جيد',
    default => 'غير معروف',
};

echo $result;
PHP

شرح: بديل أكثر ترتيبًا لـ switch.

✅ 2. التكرار (Loops)
🔁 while loop
$i = 1;

while ($i <= 5) {
    echo "العدد: $i<br>";
    $i++;
}
PHP

شرح: ينفذ الكود طالما الشرط صحيح.

🔁 do…while loop
$i = 1;

do {
    echo "العدد: $i<br>";
    $i++;
} while ($i <= 5);
PHP

شرح: ينفذ الكود مرة واحدة على الأقل، ثم يتحقق من الشرط.

🔁 for loop
for ($i = 1; $i <= 5; $i++) {
    echo "العدد: $i<br>";
}
PHP

شرح: الأكثر استخدامًا مع عدادات، تنفذ الكود بعد تحديد البداية والنهاية والزيادة.

🔁 foreach loop (للمصفوفات)
$names = ["أحمد", "فاطمة", "سعيد"];

foreach ($names as $name) {
    echo "الاسم: $name<br>";
}
PHP

شرح: تُستخدم مع المصفوفات والـ collections، وتتكرر تلقائيًا على كل عنصر.

✅ 3. عبارات التحكم داخل الحلقات
🔸 break
for ($i = 1; $i <= 10; $i++) {
    if ($i == 5) break;
    echo "العدد: $i<br>";
}
PHP

شرح: يوقف الحلقة بالكامل عند تحقق الشرط.

🔸 continue
for ($i = 1; $i <= 5; $i++) {
    if ($i == 3) continue;
    echo "العدد: $i<br>";
}
PHP

شرح: يتجاوز الدورة الحالية ويكمل الدورة التالية.

✅ 4. switch Statement
$day = "الثلاثاء";

switch ($day) {
    case "الاثنين":
        echo "بداية الأسبوع";
        break;
    case "الثلاثاء":
        echo "اليوم الثاني";
        break;
    default:
        echo "يوم غير معروف";
}
PHP

شرح: تُستخدم عندما تريد مقارنة نفس المتغير مع عدة قيم.

📌 ملخص سريع:
النوعالاستخدام
if, elseللتحكم بالقرارات والشروط
switch, matchللتحكم بحالات متعددة لقيمة واحدة
for, whileلتنفيذ أو تكرار كود
breakللخروج من الحلقة
continueلتخطي دورة واحدة في الحلقة
foreachلتكرار عناصر المصفوفة