Оператор равенства и тождественности



Оба оператора сравнивают два выражения и возвращают true, если выражения равны. Но между ними есть различия. Если в операции равенства принимают два значения разных типов, то они приводятся к одному - тому, который интерпретатор найдет оптимальным. Например:

<?php $a = "22a"; $b = 22; if($a==$b) echo "равны"; else echo "не равны"; ?>

Очевидно, что переменные хранят разные значения разных типов. Но при сравнении они будут приводится к одному типу - числовому. И переменная $a будет приведена к числу 22. И в итоге обе переменных окажутся равны.

Или, например, следующие переменные также будут равны:

$a = false; $b = 0;

Чтобы избежать подобных ситуаций используется операция эквивалентности, которая учитывает не только значение, но и тип переменной:

$a = "22a"; $b = 22; if($a===$b) echo "равны"; else echo "не равны";

Теперь переменные будут не равны.

Аналогично работают операторы неравенства != и !==.

Логические операции

Логические операции обычно применяются для объединения результатов двух операций сравнения. Например, нам надо выполнить определенное действие, если истинны будут несколько условий. Имеются следующие логические операции:

· &&

Возвращает true, если обе операции сравнения возвращают true, иначе возвращает false: $a == 5 && $b = 6

· and

Аналогично операции &&: $a == 5 and $b > 6

· ||

Возвращает true, если хотя бы одна операция сравнения возвращают true, иначе возвращает false: $a == 5 || $b = 6

· or

Аналогично операции ||: $a < 5 or $b > 6

· !

Возвращает true, если операция сравнения возвращает false: !($a >= 5)

· xor

Возвращает true, если только одно из значений равно true. Если оба равны true или ни одно из них не равно true, возвращает false. Например:

$a=12; $b=6; if($a xor $b) echo 'true'; else echo 'false';

Здесь результат логической операции будет false, так как обе переменных имеют определенное значение. Изменим код:

$a=12; $b=NULL; if($a xor $b) echo 'true'; else echo 'false';

Здесь уже результат будет true, так как значение одной переменной не установлено. Если переменная имеет значение NULL, то в логических операциях ее значение будет рассматриваться как false

Объединение строк

Для объединения строк используется оператор "точка". Например, соединим несколько строк:

$a="Привет, "; $b=" мир"; echo $a . $b . "!";

Если переменные представляют не строки, а другие типы, например, числа, то их значения преобразуются в строки и затем также происходит операция объединения строк.

$a=12;

$a .= 5;

echo $a; // равно 125

// идентично

$b="12";

$b .="5"; // равно 125

Типизация переменных

Что будет, если попробовать сложить, к примеру, число и строку, вот так: 3+'3'? В результате вы получите число 6. Это значит, что PHP автоматически осуществляет преобразование типов при необходимости, вам не нужно за это переживать.

То же самое случится, если, к примеру, сделать так: 3+true или 3+false. Попробуйте эти примеры сами и узнайте к чему преобразуется true в этом случае, а чему - false.

 

Примеры и задания

Для проверки примеров и выполнения практических заданий:

1) Создайте в папке OSPanel\domains\localhost текстовым редактором NotePad++ файл и сохраните его с расширением .php.
Если вы в своей программе хотите использовать кириллицу (выдавать, вводить русский текст), то в начале программы напишите тег html для установки шрифта для поддержки кириллицы charset=utf-8 или charset=windows-1251:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
или:

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

2) Запустите сервер – файл Open Server x64.exe или Open Server x86.exe

3) Откройте браузер (Google Chrome, Opera или любой другой), в адресной строке напишите Localhost//<имя файла.php>.

4) Если имя файла не указать выполнится файл OSPanel\domains\localhost\Index.php, если вы создали файл (программу) с примером или с решением с именем Index.php. Если имя файла указано, выполняется этот файл, например, Localhost//anketa.php

Примеры и задания для работы с переменными

 


Дата добавления: 2021-05-18; просмотров: 63; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!