Nosacījumu konstrukcijas ļauj izpildīt dažādu kodu atkarībā no nosacījuma rezultāta. Tas ir viens no programmēšanas pamatbūvblokiem.
if
Vienkāršākais nosacījums — izpilda kodu, ja nosacījums ir patiess:
<?php
$vecums = 20;
if ($vecums >= 18) {
echo "Esi pieaugušais.";
}
?>
if...else
Pievieno alternatīvu, ja nosacījums nav patiess:
<?php
$vecums = 15;
if ($vecums >= 18) {
echo "Esi pieaugušais.";
} else {
echo "Esi nepilngadīgais.";
}
?>
if...elseif...else
Vairāki nosacījumi pēc kārtas:
<?php
$atzīme = 8;
if ($atzīme >= 9) {
echo "Izcili!";
} elseif ($atzīme >= 7) {
echo "Labi!";
} elseif ($atzīme >= 4) {
echo "Apmierinoši.";
} else {
echo "Jācenšas vairāk.";
}
?>
switch
Kad jāsalīdzina viena vērtība ar vairākām iespējām, switch ir pārskatāmāks par daudziem if:
<?php
$diena = date('l'); // pašreizējā nedēļas diena angliski
switch ($diena) {
case 'Monday':
echo "Pirmdiena — nedēļas sākums!";
break;
case 'Friday':
echo "Piektdiena — gandrīz brīvdienas!";
break;
case 'Saturday':
case 'Sunday':
echo "Brīvdiena!";
break;
default:
echo "Parasta darba diena.";
}
?>
Katru case beidz ar break, citādi tiek izpildīti arī nākamie case bloki.
match (PHP 8.0+)
match ir modernāka switch alternatīva, kas izmanto striktu salīdzināšanu un atgriež vērtību:
<?php
$statusa_kods = 404;
$ziņojums = match($statusa_kods) {
200 => 'Veiksmīgi',
301 => 'Pāradresēts',
404 => 'Nav atrasts',
500 => 'Servera kļūda',
default => 'Nezināms statuss',
};
echo $ziņojums; // Nav atrasts
?>
Nosacījumi ar HTML
PHP nosacījumus var izmantot, lai dinamiski parādītu vai slēptu HTML saturu:
<?php $ir_pierakstijies = true; ?>
<?php if ($ir_pierakstijies): ?>
<p>Sveiki! <a href="iziet.php">Iziet</a></p>
<?php else: ?>
<p><a href="ieiet.php">Pieteikties</a></p>
<?php endif; ?>
Šī alternatīvā sintakse (if...endif) ir ērtāka, strādājot ar HTML šabloniem.










