68928

Вирази та операції в РНР

Лекция

Информатика, кибернетика и программирование

Вирази є тією «цеглою», з якої складаються РHP-програми. Практично все, що ви пишете в програмі, є виразом. При цьому під виразом розуміється те, що має значення. Можна сказати і по-іншому: все, що має значення, є виразом. Найпростіший вираз — це константа, що стоїть в правій частині оператора...

Украинкский

2014-09-27

62 KB

1 чел.

Лекція № 4

Тема: Вирази та операції в РНР

План:

  1.  Поняття "вираз".
  2.  Операції в РНР.
    1.  Арифметичні операції.
    2.  Бітові операції.
    3.  Логічні операції.

Поняття «вираз» в PHP

Вирази є тією «цеглою», з якої складаються РHP-програми. Практично все, що ви пишете в програмі, є виразом. При цьому під виразом розуміється те, що має значення. Можна сказати і по-іншому: все, що має значення, є виразом. Найпростіший вираз — це константа, що стоїть в правій частині оператора привласнення:

$х   =   100;

Розберемося, що є що. $х — це змінна = — це оператор привласнення, а 100 — це і є вираз. Його значення — 100.

Виразом може служити і змінна, якщо їй зіставлено безумовно значення. Наприклад:

$х   =   4; Sy   =   $х;

У першому операторові виразом є константа 4. У другому — змінна $х, оскільки раніше їй було привласнено значення 4. Але це ще не все $у = $х теж є виразом! Адже не викликає сумніву те, що його значення 4. Це, у свою чергу, дозволяє використовувати наступних операторів: $у  =   $х  =   5 або $у  =   ($х  =   5).

Таким чином, в середині виразу можемо використовувати оператора привласнення:

$у  =   1;

$х   =   100* ($у   =   2)    *   $у;

Очевидно, що змінній $х буде привласнено значення 400 (100*2 = 200 *8 2 - 400).

Операції в PHP

Арифметичні операції

Як і в будь-якій іншій мові, ми можемо використовувати арифметичні операції:

X + Y — складання;

X — Y — віднімання;

X * Y — множення;

X / Y — ділення;

X % Y — залишок від, ділення X на Y.

Також можливе використання дужок. Пріоритет одних арифметичних операцій над іншими і зміна пріоритетів при використанні дужок в арифметичних виразах відповідають звичайним математичним правилам.

До арифметичних операцій можна також віднести операції інкремента і декремента:

операція інкремента $х++   збільшує значення на 1;

операція декремента $х—   зменшує значення на 1.

Бітові операції

Дані операції призначені для установки або зняття груп бітів цілочисельної змінної. Адже будь-яке число — це просто послідовність битий. Цілі числа в PHP — 32-розрядні, тому для представлення одного числа використовуються 32 бита:

0000 0000 0000 0000 0000 0000 0000 0000 - це нуль

0000 0000 0000 0000 0000 0000 0000 0001 - це 1

0000 0000 0000 0000 0000 0000 0000 0010 - це 2

0000 0000 0000 0000 0000 0000 0000 0011 - це 3

0000 0000 0000 0000 0000 0000 0000 0100 - це 4

0000 0000 0000 0000 0000 0000 0000 0101 - це 5

0000  0000  0000  0000  0000  0000  0000  1111 - це 15

Бітові операції:

  •  x & у — будуть встановлені ті біти, які встановлені в x і у
    одночасно:

    x   =   1111    (15)    у   =   1100    (12)    Результат   =   1100    (12) .
  •  x | b — будуть встановлені тільки ті біти, які були встановлені або в x або в у:
    x   =   0100    (4)       у   =   0101    (5)    Результат   =   0101    (5).
  •  -х — інвертування бітів:
    x   -   1001   Результат   =   0110.
  •  x << у — порозрядне зрушення бітів x вліво на у розрядів:
    x   =   0010   у   =   0001    (1   розряд)    Результат   =   0100.
  •  x >> у — порозрядне зрушення бітів x управо на у розрядів:
    x   =   0010   у   =   0001    (1   розряд)    Результат   =   0001.

Логічні вирази

Логічні вирази — це вирази, результатом яких може бути або істина, або брехня. Приклади логічних виразів:

$х   =   true;  // $х   =   істина

$х  =   $у  <   0;  // $х   =   true,   якщо   $у  <   0

$х   =   $у   ==   0;  // $х   =   true,   якщо   $у   =   0

$х   =   $у>=0 &&$ у<=10          // $х   =   true,   якщо   $у   <   =0   і   $у<=10,    то

// є   $у   у   діапазоні   від   0   до   10.

У логічних виразах можна використовувати операторів порівняння і логічні операції. Оператори порівняння:

== — рівно;

!= — не рівно;

< — менше;

> — більше;

>= — більше або рівно;

<= — менше або рівно.

У PHP не можна порівнювати масиви і об'єкти, дозволяється порівнювати тільки скалярні змінні.

Логічні операції:

  •  !x повертає true, якщо x — брехня, і навпаки (заперечення — NOT);
  •  x && у повертає   true, якщо x і у — істинні (логічна операція І — AND);
  •  х || у повертає true, якщо істинне хоч би одне із значень або всі вони істинні (логічна операція АБО —   OR).

Операції операторів інкремента (++) і декремента (—) не працюють з логічними змінними, тобто не є логічними операціями. Можна б було, звичайно, припустити, що якщо false — це 0, отже, інкремент false — це  true, тобто 1.

<? $х   =   false; echo   $х; $х++; echo   $х; ?>

Проте приведений сценарій нічого не виведе (точніше він виведе два порожні рядки). Це означає, що операція інкремента для логічних значень не працює. Те ж саме можна сказати і про операцію декремента.

Скільки буде 2+2*2? Правильно, 6. Оскільки операція множення виконується перед операцією складання, отже, пріоритет операції множення вищий. Пріоритет арифметичних і логічних операцій представлений в табл.

Операції з вищим рівнем пріоритету виконуються в першу чергу. Якщо ви в чомусь сумніваєтеся, використовуйте дужки.

Пріоритет операцій в РНР

Таблиця 5.3

Пріоритет

Оператор

Порядок виконання

13

(постфікс)++ (постфікс)--

зліва направо

12

++(префікс) --(префікс)

справа наліво

11

* / %

зліва направо

10

+  -

9

«  »

8

<<=>>=

7

==   !=

6

&

5

«

4

I

3

 &&

2

II

1

= += -= *= /= %= »= <<== &= ^=  | =

справа наліво


 

А также другие работы, которые могут Вас заинтересовать

83632. Назначение кабельного журнала и что отражено на листах кабельного журнала 30.27 KB
  В кабельном журнале описывается маркировка каждого кабеля откуда и куда он идет его марка длина кабельной линии и его назначение. Назначение: Всю необходимую информацию о кабелях можно представить непосредственно на схемах: можно указать марку длину способ прокладки кабеля. Однако при построении достаточно большой системы во избежание перегруженности чертежей удобнее вынести эти данные в отдельную таблицу оставив на схемах лишь присвоенные кабелям обозначения. Во время монтажа в кабельный журнал заносятся следующие сведения: номер...
83633. Выполнение чертежей оперативной блокировки на ПС. Что должно быть отражено на чертеже. Какие виды блокировки коммутационных оборудований используются на ПС 30.11 KB
  Основные требования к оперативной блокировке: Блокзамки блокировки должны запирать приводы разъединителей только в крайних положениях включено и отключено; они не должны запирать привод разъединителя в промежуточном положении; Оперативная блокировка не должна давать ложное разрешение на операции с разъединителями при исчезновении напряжения оперативного тока или неисправностях самой оперативной блокировки. Механическая блокировка – это блокировка непосредственного действия которая может быть выполнена на близко...
83634. Нелинейные магнитные цепи при постоянных потоках 161 KB
  Для концентрации магнитного поля и придания ему желаемой конфигурации отдельные части электротехнических устройств выполняются из ферромагнитных материалов. Векторные величины характеризующие магнитное поле Наименование Обозначение Единицы измерения Определение Вектор магнитной индукции Тл тесла Векторная величина характеризующая силовое действие магнитного поля на ток по закону Ампера Вектор намагниченности А м Магнитный момент единицы объема вещества Вектор напряженности магнитного поля А м где Гн м магнитная постоянная Основные...
83635. Общая характеристика задач и методов расчета магнитных цепей 128 KB
  При этом для наглядности можно составить эквивалентную электрическую схему замещения исходной магнитной цепи с использованием которой выполняется расчет. При расчете магнитных цепей на практике встречаются две типичные задачи: задача определения величины намагничивающей силы НС необходимой для создания заданного магнитного потока заданной магнитной индукции на каком либо участке магнитопровода задача синтеза или ldquo;прямаяldquo; задача; задача нахождения потоков магнитных индукций на отдельных участках цепи по заданным...
83636. Нелинейные цепи переменного тока в стационарных режимах 136.5 KB
  Когда постоянная времени нагрева τ одного порядка с Т соотношения между переменными составляюшими напряжения и тока являются более сложными определяющими сдвиг по фазе между ними. Другой важной особенностью нелинейных элементов в цепи переменного тока является вызываемое ими появление высших гармоник даже при наличии в цепи только источников синусоидального напряжения и или тока. На этом принципе строится например ряд умножителей частоты а также преобразователей формы тока или напряжения.
83637. Графический метод с использованием характеристик по первым гармоникам 130 KB
  Основные этапы расчета: строится график зависимости нелинейного элемента для первых гармоник; произвольно задаются амплитудой одной из переменных например связанной с нелинейным элементом и по характеристике последнего находят другую переменную определяющую режим работы нелинейного элемента после чего принимая все величины синусоидально изменяющимися во времени на основании построения векторной диаграммы определяется амплитуда первой гармоники переменной на входе цепи; путем построения ряда векторных диаграмм для различных...
83638. Метод кусочно-линейной аппроксимации 134 KB
  Для каждого участка ломаной определяются эквивалентные линейные параметры нелинейного элемента и рисуются соответствующие линейные схемы замещения исходной цепи. Расчет каждой из полученных линейных схем замещения при наличии в цепи одного нелинейного элемента и произвольного числа линейных не представляет труда. При наличии в цепи переменного источника энергии рабочая изображающая точка будет постоянно скользить по аппроксимирующей характеристике переходя через точки излома.
83639. Метод эквивалентных синусоид (метод расчета по действующим значениям) 181 KB
  Катушка с ферромагнитным сердечником Нелинейная катушка индуктивности изображена на рис. Различают параллельную и последовательную схемы замещения катушки с ферромагнитным сердечником. Схемы замещения уравнения и векторные диаграммы для катушки c ферромагнитным сердечником Схема замещения Уравнения и соотношения для параметров Векторная диаграмма Параллельная Последовательная где где Примечание. Трансформатор с ферромагнитным сердечником Трансформатор с ферромагнитным сердечником изображен на рис.
83640. Переходные процессы в нелинейных цепях 165 KB
  На нелинейные цепи не распространяется принцип суперпозиции поэтому основанные на нем методы в частности классический или с использованием интеграла Дюамеля для расчета данных цепей не применимы. Отсутствие общности подхода к интегрированию нелинейных дифференциальных уравнений обусловило наличие в математике большого числа разнообразных методов их решения нацеленных на различные типы уравнений. Применительно к задачам электротехники все методы расчета по своей сущности могут быть разделены на три группы: – аналитические методы...