1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
echo "Помните я говорил что 3-х операторов ветвления вполне достаточно. И это так, потому что для более ветвистых выражений создали специальную конструкцию которая называется switch"; echo '<br /><br />===<br /><br />'; $myNum= 3; switch($myNum){ case 1: echo "В переменной число 1"; break; case 2: echo "В переменной число 2"; break; case 3: echo "В переменной число 3"; break; case 4: echo "В переменной число 4"; break; default: echo "На тот случай если мы никуда не попадём, такой вот предохранитель))"; } echo '<br /><br />===<br /><br />'; echo "break - выкидывает нас из switch`а break это граница операторов. Уберите её и выполниться всё варианты что далее<br />"; switch($myNum){ case 1: echo "<br />В переменной число 1"; break; case 2: echo "<br />В переменной число 2"; break; case 3: echo "<br />В переменной число 3"; case 4: echo "<br />В переменной число 4"; default: echo "<br />На тот случай если мы никуда не попадём, такой вот предохранитель)) Вот вообщем то и всё про ветвления, ничего сложного правда))"; } echo '<br /><br />===<br /><br />'; |
Помните я говорил что 3-х операторов ветвления вполне достаточно. И это так, потому что для более ветвистых выражений создали специальную конструкцию которая называется switch
===
В переменной число 3
===
break — выкидывает нас из switchа break это граница операторов. Уберите её и выполниться всё варианты что далее
В переменной число 3
В переменной число 4
На тот случай если мы никуда не попадём, такой вот предохранитель))
Вот вообщем то и всё про ветвления, ничего сложного правда))
===
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
echo "<h2>Функции php</h2> Функции это куски кода которые могут выполняться-вызываться в любой части программы. Они позволяют убрать повторяющиеся куски кода, для того и используются. Функция принимает в себя параметры, в круглые скобочки, в фигурных тело функции, в которых и крутиться код<br /><br /><br />"; function num_compare($a, $b){ if($a > $b){ echo "$a > $b"; }elseif($a < $b){ echo "$a < $b"; }else{ echo "$a = $b"; } } echo num_compare(5, 6).'<br />'; echo num_compare(4354595, 4394432).'<br />'; echo '<br /><br />===<br /><br />'; echo "Одна функция, одно действие, не надо пихать в функцию кучу действий. return возвращает нам результат функции. Код после return не исполняется. Но позволяет сохранить результат исполнения программы.<br /><br />"; function sum($a, $b){ return ($a + $b); } echo $mySum = sum(3, 8)." <-- Результат выполнения функции<br />"; echo "<br />Если вы, или юзер не введёт второй параметр это огорчит(Missing argument) нашу функцию, давайте не будем её огорчать и запишем хотя бы 1 параметр по умолчанию, и проверим.<br /><br />"; function sum2($a, $b=22){ return ($a + $b); } echo $mySum = sum2(3)." <-- Один аргумент<br />"; echo $mySum = sum2(3, 8)." <-- А что если поставить два?<br /><br />"; function sum3($a=33, $b=22){ return ($a + $b); } echo $mySum = sum3()." <-- Вообще всё забыли<br />"; echo $mySum = sum3(44)." <-- Почти получилось<br />"; echo $mySum = sum3(44, 45)." <-- Это победа!<br />"; echo '<br /><br />===<br /><br />'; |
Функции это куски кода которые могут выполняться-вызыватся в любой части программы. Они позволяют убрать повторябщиеся куски кода, для того и используются. Функция принимает в себя параметры, в круглые скобочки, в фигурных тело функции, в которых и крутиться код
5 < 6
4354595 < 4394432
===
Одна функция, одно действие, не надо пихать в функцию кучу действий. return возвращает нам результат функции. Код после return не исполняется. Но позволяет сохранить резултат исполнения программы.
11 <— Результат выполнения функции
Если вы, или юзер не введёт второй параметр это огорчит(Missing argument) нашу функцию, давайте не будем её огорчать и запишем хотя бы 1 параметр по умолчанию, и проверим.
25 <— Один аргумент
11 <— А что если поставить два?
55 <— Вообще всё забыли
66 <— Почти получилось
89 <— Это победа!
===
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
echo 'А теперь про области тьмы, или области видимости переменных. Где же они видны а где нет и где эта тень? Глобальные и локальные переменные.<br /><br />'; $dark = 100; //Эта переменная принадлежит программе, глобальная function light($dark){ //А эта переменная принадлежит функции $dark++; //Локальная переменная echo $dark." <-- Эта цифра из функции <br />"; } echo $dark."<br />"; light($dark); //Функция отработала и убежала echo $dark."<br />"; //А глобальное значение осталось echo '<br /><br />===<br /><br />'; echo "Побалуемся ещё return`ами."; $a = 1; function not_1($a){ if($a == 1){ return $a; } echo 'Программа выполнилась. Ваш параметр не равен 1<br />'; } not_1(2)."<br />"; not_1(1)."<br />"; not_1(3)."<br />"; echo '<br /><br />===<br /><br />'; |
А теперь про области тьмы, или области видимости переменных. Где же они видны а где нет и где эта тень? Глобальные и локальные переменные.
100
101 <— Эта цифра из функции
100
===
Побалуемся ещё return`ами.
Программа выполнилась. Ваш параметр не равен 1
Программа выполнилась. Ваш параметр не равен 1
===
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
echo "Рекурсия, практически тоже самое что и цикл)) Функция вызывает саму себя. Прогеры обычно с этим подают факториалы.<br /><br />"; //4 * fact(4); //4 * fact(3); //4 * 3 * 2 * 1 //Как её можно применить на сайте? Считывать строчку кода пока она не станет пустой. function fact($x){ if($x == 1){ return 1; }else{ return $x * fact($x - 1); //Рекурсия в этой строке! } } echo fact(4)." <-- Факториал 4 <br />"; echo fact(6)." <-- Факториал 6 <br />"; echo fact(8)." <-- Факториал 8 <br />"; echo '<br /><br />===<br /><br />'; function circle($x1){ if($x1 == 1){ return 1; }else{ return $x1 + circle($x1 - 1); //Рекурсия в этой строке! } } echo $res1 = circle(5)." <-- рекурсия с плюсом 5 <br />"; echo circle(2)." <-- рекурсия с плюсом 2 <br />"; echo "<br />Фууух, короче рекурсия страшная тема, один из китов прогинга<br /><br /><br />"; |
Рекурсия, практически тоже самое что и цикл)) Функция вызывает саму себя. Прогеры обычно с этим подают факториалы.
24 <— Факториал 4
720 <— Факториал 6
40320 <— Факториал 8
===
15 <— рекурсия с плюсом 5
3 <— рекурсия с плюсом 2
Фууух, короче рекурсия страшная тема, один из китов прогинга
| Категория: PHP
| Тэги: PHP / основы / ШП