Шпаргалка по php, описание управляющих конструкций
if
if- оператор выбора, если выражение истинно (TRUE), то конструкция выполняется, если нет (FALSE), то конструкция пропускается:
if ($a > $b){
print 'a больше b';
}
Также существует альтернативный синтаксис, когда вместо фигурных скобок, допускается использовать двоеточие (:):
if ($a > $b):
print 'a больше b';
endif;
If else
if else- оператор выбора, но в отличии от if, при значении FALSE в операторе if, выполняется выражение оператора else:
if ($a > $b){
print 'a больше b';
}
else {
print 'a не больше b';
}
elseif
elseif- конструкция расширяющая оператор if, добавляя альтернативное условие, которое выполняется, если if имеет значение FALSE, а elseif значение TRUE, оператор else выполняется при условии, что if и elseif имеют значение FALSE
if($a > $b){
print 'a больше b';
}
elseif ($a = $b) {
print 'a равно b';
}
else {
print 'a меньше b';
}
while
while- простейший цикл, который выполняется до тех пор, пока значение в самом while равняется TRUE
$i = '1';
while ($i < 10){
print $i;
$i++;
}
//выведет:
// 123456789
do-while
do-while- отличие от while в том, что первая итерация гарантированно выполнится, проверка на истинность выражения проверяется в конце цикла.
$i = '1';
do {
print $i;
}
while ($i < 10);
Для прерывания цикла можно использовать break:
$i = '1';
do {
if($i > 5 ){
break;
}
print $i;
$i++;
}
while ($i < 10);
//цикл дойдет до 5 и произойдет прерывание выполнения программы
for
for- еще один цикл, имеет структуру:
for (expr1; expr2; expr3)
statement
- expr1- вычисляется один раз в начале цикла
- expr2- проверяется в начале каждой итерации, если значение TRUE, то цикл продолжается
- expr3- выражение, которое выполняется в конце каждой итерации
-
for ($i = 1; $i < 10; $i++){ print $i; }
foreach
foreach- конструкция, для перебора массивов и объектов, синтаксис:
foreach (array_expression as $value)
statement
foreach (array_expression as $key => $value)
statement
где statement- перебираемый массив или объект, $value- значение, которое было присвоено при выполнение цикла,а Key- это ключ элемента массива. Во время выполнения цикла, внутренний указатель массива увеличивается на единицу и при следующей итерации работа будет проходить со следующим элементом. Пример:
$arr = array(1,2,3,4,17);
foreach ($arr as $i){
print "$i, ";
}
unset($i);
Для вывода ключей массива:
$arr = array(1,2,3,4,17);
print'
';
foreach ($arr as $key => $i){
print "$key - $i, ";
}
unset($i);
// выведет 0 - 1, 1 - 2, 2 - 3, 3 - 4, 4 - 17,
по завершению цикла нужно разорвать ссылку на последний элемент, используя unset()
break
break- конструкция break используется для упрощения логики в сложных циклах, при выполнении условия происходит выход из цикла:
$x=0;
while ($x++<5) {
if ($x==3){
break;
}
echo "step $x
";// выведет step1 и step2
}
continue
continue- конструкцияcontinue также как и конструкция break используется для упрощения логики в сложных циклах, но при выполнении условия происходит завершение текущей итерации и переход к следующей:
$x=0;
while ($x++<5) {
if ($x==3) continue;
echo "step $x
";
}//итерация step3 будет пропущена
switch
switch- оператор, также как и оператор if, используется для сравнения переменных с множеством значений, при значении TRUE- участок кода будет выполняться, при значении FALSE- код будет пропущен.
Конструкция записанная с помощью оператора if:
$i = '1';
if ($i == 0) {
echo "i = 0";
} elseif ($i == 1) {
echo "i = 1";
} elseif ($i == 2) {
echo "i = 2";
}
Равносильна записи сделанной с помощью оператора switch:
$i = '1';
switch ($i) {
case "0":
echo "i = 0";
break;
case "1":
echo "i = 1";
break;
case "2":
echo "i = 2";
break;
}
include, require, include_once, require_once
include, require, include_once, require_once- выражения, которые используются для подключения файлов, include отличается от require тем, что при возникновении ошибки include выдает ошибку, а require выдает ошибку и прекращает выполнение скрипта. include_once и require_once отличаются от include и require тем, что при подключении происходит проверка, подключался файл ранее или нет, если файл уже подключался, то ничего не произойдет, если файл не подключался, то произойдет подключение файла.
