Помогни ни да направим Uroci.net по - богат! Добави урок

PHP - част 4 (Условни изрази)

PHP » PHP
fix3d   трудност:    видян: 13151



Клаузата else
Да разгледаме случая, когато искате да изпълните даден код, когато условието има стойност True. Ако същото условие има стойност False, трябва да се изпълнят други оператори. В този случай е удобно да се използва клаузата else. Трябва да имате предвид някои факти за клаузата else.

Клаузата else, може да се използва само в комбинация с конструкцията if.
Кодът в клаузата else се изпълнява ,само ако условието в конструкцията if върне стойност False.
Можете да имате само една клауза else и трябва да бъде на последно място в кода на блока.

Следващия пример показва използването на клаузата else

<?php
$age = 19;
if ($age < 18)
{
echo "Не сте пълнолетен, годините ви са по-малко от 18";
// Горния ред няма да бъде отпечатан
}
else
{
echo "Пълнолетен сте, годините ви са повече от 18";
}
?>


В горния код на променливата $age се задава стойност 19 и програмата проверява дали стойността и е по=малка от 18. Тъй като условието връща стойност False, се изпълнява кодът в клаузата else. На екранът се появява текстът "Пълнолетен сте, годините ви са повече от 18".

Клаузата else if
Клаузата else if се използва заедно с конструкциите if и else. Можете да имате множество клаузи else if веднага конструкция if, обаче може да има само една клауза else. Клаузата else if се изпълнява само когато конструкцията if и на всички други клаузи else if са върнали стойност False.

Всички клаузи else if трябва да са декларирани след конструкцията if и преди клаузата else на конструкцията.

Например:
<?php
$Num = 50;
if (($Num > 9 ) && ($Num < 100))
{
echo $Num, "e двуцифрено число";
}
elseif ($Num >= 100)
{
echo $Num, "Има три или повече цифри";
}
else
{
echo $Num, "е едноцифрено число";
}
?>

В горния пример на променливата $Num се присвоява стойност 50 и се проверяват различни условия. Ако стойността на $Num е между 9 и 100, се извежда съобщението "$Num, e двуцифрено число". Ако стойността е по-голяма от 100, се извежда съобщението $Num, има три или повече цифри". В противен случай съобщението е "$Num, e едноцифрено число".

Както отбелязахме по-рано можете да имате само една клауза else в конструкцията if. Обаче можете да имате множество клаузи else if в една конструкция if. Това е показано в следващия пример>
<?php
$Num = 50;
if (($Num > 9 ) && ($Num < 100))
{
echo $Num, "e двуцифрено число";
}
elseif (($Num > 99) && ($Num < 1000 )
{
echo $Num, "е трицифрено число";
}
elseif (($Num > 9999) && ($Num < 10000))
{
echo $Num, "е четирицифрено число";
}
elseif ($Num >= 10000)
{
echo $Num, "Има пет или повече цифри";
}
else
{
echo $Num, "е едноцифрено число";
}
?>


Когато се използва конструкцията if, условията се оценяват от конструкциите if и else if. Когато обаче се използва конструкцията switch, условието се оценява само веднъж и след това условието се сравнява със списък от предварително зададени стойности. Всяка стойност се съхранява в клаузата case. Когато се открие съответна стойност, се изпълняват командите от съответната клауза case и всички редове след нея. Ако не се открие съвпадаща стойност, тогава се изпълняват командите от клаузата default до края на конструкцията или до оператора break.

Ето го и синтаксисът на конструкцията switch.
switch (променлива)
{
case стойност 1;
оператор;
оператор;
case стойност 2;
оператор;
оператор;
.......
default;
оператор;
оператор;
}

Изразите зададени в клаузите case, трябва да са от тип integer, string или float.

Ето и пример за използване на конструкцията switch
<?php

$val = "first";
switch ( $val )
{
case "first": echo "Първи случай.";
case "second": echo "Втори случай.";
case "third": echo "Трети случай.";
case "fourth": echo "Четвърти случай.";
break;
}

?>

В горния пример ако стойността на променливата $val e fourth, ще се изпълни последни израз. Обаче ако стойността е first, ще се изпълняват всички команди от всички клаузи case. За да се избегне това трябва да поставите оператора break в края на всяка клауза case. Оператора break продължава изпълнението на програмата след конструкцията switch. Можете да препишете горния код по следния начин:
<?php

$val = "first";
switch ( $val )
{
case "first": echo "Първи случай.";
break;

case "second": echo "Втори случай.";
break;

case "third": echo "Трети случай.";
break;

case "fourth": echo "Четвърти случай.";
break;
}

?>


Страници: «1 2 3 4 5 »

Сподели урока:



Коментари (1)

menian на 06.10 2011 в 14:07ч.
Ако някой от примерите не работи - четете този коментар:

Махнете празното място между комбинации от знаци като ==, &&, || че да работят примерите ви

При примера където се пише за VarA и VarB, първата променлива е написана с малка първа буква. Трябва да се поправи, иначе примера няма да работи.

Изпусната е една затваряща скоба ) при примера с elseif. Трябва да се добави - иначе кода няма да работи.

В последния пример с for loop има грешка. Вместо Myval е написано Nyval. Поправете го, за да не ви запецне страницата.

Изпусната е една затваряща скоба ) при примера с while

В предпоследните два примера за foreach е объркано името на currval.

Регистрирайте се, за да добавите коментар


Калдейта Ком ЕООД - © 2003-. Всички права запазени.
Препоръчваме: IT Новини