- •Часть II
- •Оглавление
- •Введение
- •Семейство tcp/ip
- •Эмулятор Web - сервера
- •Порядок выполнения работы
- •Операции инкремента и декремента
- •Битовые операции
- •Операции сравнения
- •Операция эквивалентности
- •Логические операции
- •Конструкции (инструкции) языка php Инструкция if-else
- •Двойное (составное) условия If-Else
- •Вложенные конструкции if-else
- •Цикл, с предусловием while
- •Цикл, с постусловием do-while
- •Универсальный цикл for
- •Инструкции break
- •Конструкция switch-case
- •Конструкция include
- •Порядок выполнения работы
- •Контрольные вопросы
- •Как создается простой массив?
- •Ассоциативные массивы
- •Многомерный массив
- •Инструкция list
- •Создание базы данных и таблиц
- •Как подключится к созданной базе данных firma
- •Как вывести на экран всю таблицу в цикле?
- •Подключение к циклу printf
- •Оператор выборки select
- •Оператор вставки insert
- •Создаем форму для добавления нового сотрудника
- •Функция обновления записей в базе данных update
- •Оператор удаления delete
- •Задание
- •Порядок выполнения работы
- •Контрольные вопросы
- •Литература
Операции инкремента и декремента
Для операций, $а+=1 и $b-=1 в связи с их чрезвычайной распространенностью в РНР ввели, как и в Си, специальные операторы:
$а++ — увеличение переменной, $а на 1;
$а -- — уменьшение переменной, $а на 1.
Как и в языке Си, эти операторы увеличивают, или уменьшают значение переменной, а в выражении возвращают значение переменной $а до изменения.
Пример 5
<?php
$а=10;
$b=$а++;
echo "a=$a, b=$b"; // выведет а=11, b=10
?>
В примере 5 сначала переменной $b присвоилось значение переменной $а, а затем последняя была инкрементирована (увеличилась на 1). Выражение, значение которого присваивается переменной $b, может быть и сложнее — в любом случае, инкремент $а произойдет только после его вычисления.
Существуют также парные операторы, которые указываются до переменной. Соответственно, они возвращают значение переменной уже после изменения.
Пример 6
<?php
$а=10;
$b= --$а;
echo "а=$а, b=$b"; // выведет а=9, b=9
?>
Операторы инкремента и декремента на практике применяются очень часто. Например, они встречаются практически в любом цикле for.
Битовые операции
Эти операции предназначены для работы (установки/снятия/проверки)
групп битов в целой переменной.
Биты целого числа — это отдельные разряды того же самого числа, записанного в двоичной системе счисления. Например, в двоичной системе число 12 будет выглядеть как 1100, а 2 — как 10, так что выражение 12|2 вернет нам число 14 (1110 в двоичной записи). Если переменная не целая, то она вначале округляется, а уж затем к ней применяются перечисленные ниже операторы.
а & b - результат — число, у которого установлены только те биты, которые установлены и у а, и у b одновременно.
Пример 7
<?php
8 4 2 1
$a=13; // в двоичном виде 1101 (разряд 8+разряд 4+разряд 1= 13)
8 4 2 1
$b=5; // в двоичном виде 0101 (разряд 4 + разряд 1 = 5)
8 4 2 1
$c=$a&$b; // 13&5 (1101&0101) = 5 (0101) = разряд 4 + разряд 1 = 5
echo"$c"; // вывод полученного результата = 5 (0101)
?>
а | b - результат — число, у которого установлены только те биты, которые установлены либо в а, либо в b (либо одновременно).
Пример 8
<? php
8 4 2 1
$a=13; // в двоичном виде 1101 (разряд 8 + разряд 4 + разряд 1 = 13)
8 4 2 1
$b=5; // в двоичном виде 0101 (разряд 4 + разряд 1 = 5)
$c=$a|$b; // 13|5 (1101 | 0101) =13 (1101) = разряд 8+ разряд 4+ разряд 1 = 13
echo"$c"; // вывод полученного результата = 13 (1101)
?>
а << b — результат — число, полученное поразрядным сдвигом, а на b битов влево.
Пример 10
<?php
$a=3; // в двоичном виде число 3 = (0011)
$b=2; // в двоичном виде число 2 = (0010), число 2 показывает на сколько разряд 1 будет сдвинут. Если 2, то на 2 позиции.
$c=$a<<$b;
echo"$c";// вывод полученного результата = 12 (1100)
?>
а >> b — аналогично, только вправо.
Пример 11
<?php
$a=3;
$b=2;
$c=$a>>$b;
echo"$c";
?>// Аналогично, только вправо
