PHP मा standard control-flow कन्स्ट्रक्ट्स छन् — conditionals (, , ), loops (, , ), र branching (, ) — साथै केही distinctive features जस्तै arrays को लागि र modern expression।
ifswitchmatchforforeachwhilebreakcontinueforeachmatch<?php
if ($score >= 90) {
$grade = "A";
} elseif ($score >= 80) {
$grade = "B";
} else {
$grade = "F";
}
// ternary and null coalescing
$status = $age >= 18 ? "adult" : "minor";
$name = $input ?? "default"; // ?? — use default if null/unset (PHP 7+)
$value ??= "x"; // ??= assign if null (PHP 7.4)
null coalescing operator ?? PHP मा defaults को लागि ध्यान दिइएको छ (यदि बायाँ null वा unset छ भने दायाँ पक्ष फर्काउँछ) — isset() जाँचभन्दा सफा।
switch ($day) {
case "Sat":
case "Sun":
$type = "weekend"; break; // ⚠️ break needed or it falls through
default:
$type = "weekday";
}
// match (PHP 8) — cleaner: returns a value, STRICT comparison, NO fall-through
$type = match($day) {
"Sat", "Sun" => "weekend", // multiple values, no break needed
default => "weekday",
};
match expression (PHP 8) switch को लागि modern improvement हो: यसले value फर्काउँछ, strict (===) comparison प्रयोग गर्छ, र कुनै fall-through छैन (कुनै break आवश्यक छैन) — नयाँ कोडमा preferred।
for ($i = 0; $i < 10; $i++) { }
foreach ($items as $item) { } // iterate array values
foreach ($map as $key => $value) { } // keys + values — the PHP idiom for arrays
while ($condition) { }
do { } while ($condition);
foreach PHP मा arrays को iterate गर्न को लागि idiomatic, सबैभन्दा प्रयोग गरिने loop हो (associative arrays को लागि $key => $value form सहित)।
foreach ($items as $item) {
if ($item->skip) continue; // skip to next iteration
if ($item->stop) break; // exit the loop
}
Control flow logic अभिव्यक्त गर्न को लागि आधारभूत mechanism हो, प्रत्येक प्रोग्राममा प्रयोग गरिन्छ, त्यसैले PHP को कन्स्ट्रक्ट्स बुझ्नु fundamental everyday ज्ञान हो।
अधिकतर standard छन्, तर केही PHP-specific बिन्दु महत्त्वपूर्ण छन्: foreach PHP को ubiquitous arrays iterate गर्न को लागि idiomatic, dominant loop हो (maps को लागि $key => $value form सहित); null coalescing operator ?? (र ??=) सफा default handling को लागि ध्यान दिइएको छ (एक distinctly PHP idiom); र modern match expression (PHP 8) error-prone switch को लागि महत्त्वपूर्ण improvement हो — value फर्काउँछ, strict comparison प्रयोग गर्छ, र fall-through bugs हटाउँछ (classic switch pitfall break गर्न बिर्सनु को)।
यी कन्स्ट्रक्ट्स जान्नु, र modern, safer forms लाई prefer गर्नु (match switch को सट्टामा, defaults को लागि ??), सफा, idiomatic, bug-free PHP logic लेख्न को लागि everyday ज्ञान हो, fundamentals र modern PHP को improvements दुवै को साथ fluency प्रतिफलित गर्दै।