Операторы php пример

Оператор Switch PHP

Оператор или «переключатель» заменяет несколько подряд идущих конструкций . При этом он сравнивает одну переменную с множеством значений. Таким образом, это наиболее удобное средство для организации мультиветвления.

  • Оператор может проверять как строковые значения (тогда они указываются в кавычках), так и числовые (без кавычек).
  • Оператор в конструкции обязателен. Он осуществляет выход из конструкции при истинном условии и выполнении соответствующего условию оператора. Без будут выполняться операторы всех независимо от их истинности.

Рис. 3.5. Условный оператор Switch

Пример: задан массив с полными мужскими именами. Проверять первый элемент массива и в зависимости от имени, выдавать приветствие с коротким именем.

Решение:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$names=array("Иван","Петр","Семен");
switch($names){
case "Петр" 
	echo "Привет, Петя!";
	break;
case "Иван" 
	echo "Привет, Ваня!";
        break;
case "Семен" 
	echo "Привет, Ваня!";
        break;	
default 
	echo "Привет, $names!";
        break;
}

Задание php 3_4:

  • Создайте переменную и присвойте ей произвольное числовое значение
  • С помощью конструкции выведите фразу «Это рабочий день», если значение переменной попадает в диапазон чисел от 1 до 5 (включительно)
  • Выведите фразу «Это выходной день», если значение переменной равно числам 6 или 7
  • Выведите фразу «Неизвестный день», если значение переменной не попадает в диапазон чисел от 1 до 7(включительно)

Дополните код:

1
2
3
4
5
6
7
8
9
10
11
12
...
switch(...){
case 1 
case 2
...
	echo "Это рабочий день";
	break;
case 6
...
default
... 	
}

Конструкции выбора

Часто вместо нескольких расположенных подряд инструкций целесообразно воспользоваться специальной конструкцией выбора switch-case. Данная конструкция предназначена для выбора действий, в зависимости от значения указанного выражения. Конструкция switch-case чем-то напоминает конструкцию if-else, который, по сути, является ее аналогом. Конструкцию выбора можно использовать, если предполагаемых вариантов много, например, более 5, и для каждого варианта нужно выполнить специфические действия. В таком случае, использование конструкции if-else становится действительно неудобным.

Синтаксис конструкции switch-case такой:

Принцип работы конструкции switch-case такой:

  1. Вычисляется значение выражения;
  2. Просматривается набор значений. Пусть значение1 равно значению выражения, вычисленного на первом шаге. Если не указана конструкция (оператор) break, то будут выполнены команды i, i+1, i+2, … , N. В противном случае (есть break) будет выполнена только команда с номером i.
  3. Если ни одно значение из набора не совпало со значением выражения, тогда выполняется блок default, если он указан.

Приведем примеры использования конструкции switch-case:

Рассмотренный сценарий выводит x=1 дважды. Еще пример использования конструкции switch-case:

Данный скрипт выводит «Это Яблоко».

Конструкция switch выполняется поэтапно. Сперва никакой код не исполнен. Только, когда конструкция case найдена со значением, которое соответствует значению выражения switch, PHP начинает исполнять конструкции. PHP продолжает исполнять конструкции до конца блока switch, пока не встречается оператор break. Если не использовать конструкции (операторы) break, скрипт будет выглядеть так:

Операторный список для case может быть также пуст, он просто передает управление в операторный список до следующей конструкции case:

Когда ни одно значение из набора не совпало со значением выражения, тогда выполняется блок default, если он указан, например:

Данный скрипт выводит «x не равен 0, 1 или 2», поскольку переменная $x=3.

Конструкция switch-case также имеет альтернативный синтаксис:

Практический пример использования альтернативного синтаксиса для конструкции switch-case:

Как вы уже поняли, данный скрипт выводит «x не равен 0, 1 или 2», так как $x=3.


 <<< Назад
(Циклы в PHP) 

 Вперед >>>
(Конструкции объявления) 


Есть еще вопросы или что-то непонятно — добро пожаловать на наш  форум портала PHP.SU 
 

Логическое НЕ (!)

Оператор логическое НЕ, его также называют отрицание обозначается знаком . Он является унарным оператором, помещаемым перед одиночным операндом. Оператор «логическое НЕ» используется для инверсии логического значения своего операнда и всегда возвращает или .

Если потребуется инвертировать значение выражения, например , необходимо будет использовать круглые скобки: . Также с помощью оператора можно преобразовать любое значение в его логический эквивалент, дважды применив оператор: .

<?php
 
  $a1 = 10;
 
  var_dump((11 == 11));   // true
  
  // оператора ! инвертирует значение
  var_dump(!(11 == 11));  // false
  
  // преобразует в логическое значение
  var_dump(!!$a1);      // true

?>

С этой темой смотрят:

  • Выражения и операторы
  • Арифметические операторы
  • Операторы сравнения
  • Побитовые операторы

Флешки для iPhone

Цикл While php

Рис. 4.1. Пример использования цикла While

Результат:

1 2 3 4 5 6 7 8 9 10

Кроме того, можно использовать альтернативный синтаксис:

1
2
3
4
5
while (условие)
	 оператор 1;
	 оператор 2;
	 ...
endwhile;

Рис. 4.2. Пример альтернативного использования цикла While

Пример: Выводить на экран ряд чисел 4 7 10 13 16 19 22… Всего вывести 30 цифр. Использовать цикл While php

Решение:

1
2
3
4
5
6
$sum=1;
while ($i<=30){
	 $sum+=3;
	 $i++;
	 echo ($sum." ");
}

Результат:

4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 58 61 64 67 70 73 76 79 82 85 88 91 94

Пример: Выводить степени двойки до значения 1024

Решение:

1
2
3
4
5
$a=1;
 while ($a<1000){
	 $a=$a*2;
	 echo ($a." ");
 }

Задание php 4_1: написать скрипт, вычисляющий квадраты целых чисел от 1 до 9

Логины и пароли ютуб : как поставить или поменять их в 2 клика

Несколько операторов „?“

Последовательность операторов вопросительного знака позволяет вернуть значение, которое зависит от более чем одного условия.

Например:

Поначалу может быть сложно понять, что происходит. Но при ближайшем рассмотрении мы видим, что это обычная последовательная проверка:

  1. Первый знак вопроса проверяет .
  2. Если верно – возвращает . В противном случае, проверяет выражение после двоеточия „»:»“, вычисляет .
  3. Если это верно – возвращает . В противном случае, проверяет выражение после следующего двоеточия „»:»“, вычисляет .
  4. Если это верно – возвращает . В противном случае, возвращает выражение после последнего двоеточия – .

Вот как это выглядит при использовании :

Переменные

PHP оператор if

Рис 3.1. Условный оператор IF, укороченный вариант

Рис. 3.2. Синтаксис условного оператора IF ELSE

Рис. 3.3. Полный синтаксис условного оператора IF elseif

Подытожим:

  • Укороченный синтаксис может не содержать части конструкции с и не содержать дополнительного условия
  • Вместо служебного слова можно писать (отдельно)
  • В одной конструкции может быть несколько . Будет выполнено первое встретившееся выражение равное .
  • В случае наличия альтернативного условия конструкция должна идти последней в синтаксисе.

Пример:

1
2
3
4
5
6
7
if($x > $y)
    echo $x." больше, чем ".$y;
elseif($x == $y) // при использовании ":" нельзя писать раздельно else if 
    echo $x." равно ".$y;
else
    echo $x." не > и не = ".$y;
endif;

Важно: При использовании в конструкции двоеточия вместо фигурных скобок нельзя писать в два слова!

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

В условии в скобках могут присутствовать следующие операции:

равенство
неравенство
больше
меньше
больше или равно
меньше или равно

Пример: проверить значение числовой переменной: если оно меньше либо равно 10, — выдавать сообщение «число меньше или равно 10», в обратном случае выдавать сообщение «число больше 10»

Решение:

1
2
3
4
5
6
7
$number=15;
 if ($number <=10) {
	 echo "число меньше или равно 10";
 }
 else {
	 echo "число больше 10";
 }

Блоки php кода можно разрывать, рассмотрим пример:

Пример: Выводить на экран html-код «а равно 4», если переменная действительно равна 4

1 Решение:

1
2
3
4
<?php
if ($a == 4)
    echo "a равно 4";
?>

2 Решение:

1
2
3
<?php if ($a == 4) ?>
A равно 4
<?php endif; ?>

Задание php 3_1: Выводить перевод цветов с английского языка на русский, проверяя значение переменной (в которой присвоен цвет: )

Задание php 3_2: Найти максимальное из трех чисел

Операции сравнения и правило лжи

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

Т.е. в качестве условия может выступать единственная переменная. Рассмотрим пример:

1
2
3
4
$a=1;
 if ($a) {
	 echo $a;
 }

В примере транслятор языка php будет рассматривать переменную в скобках на правило лжи:

Правило ЛЖИ или что считается ложным:

  • логическое False
  • целый ноль ()
  • действительный ноль (0.0)
  • пустая строка и строка «0»
  • массив без элементов
  • объект без переменных
  • специальный тип NULL

Таким образом, в рассмотренном примере переменная равна единице, соответственно условие будет истинным и оператор выведет на экран значение переменной.

Задание php 3_3: дана переменная со строковым значением. Если равна имени, то выводить «Привет, имя!», если равна пустому значению, то выводить «Привет, незнакомец!»

Логические конструкции и в условном операторе

  1. Иногда необходимо предусмотреть выполнение одновременно нескольких условий. Тогда условия соединяются логическим оператором И — :
1
2
3
4
$a=1;
if ($a> && $a<5) {
	echo "a > 0 и a < 5";
}

При необходимости выполнения одного из нескольких условий применяется логический оператор ИЛИ — :

1
2
3
4
$a=1;
if ($a> || $a>1) {
	echo "a > 0 или a > 1";
}

Для указания ложности условия используется логический оператор НЕ — :

1
2
3
4
$a=1;
if (!($a<)) {
	echo "a не < 0";
}

Количество операндов

Разные операторы принимают разное количество операндов. Операторы, которые работают с двумя операндами называются бинарными, к таким операторам относятся сложение, вычитание умножение и т.д.

Другие операторы могут принимать всего один операнд, они называются унарными. Примерами унарного оператора могут служить унарный минус (-), инкремент, декремент и т.д.

Существует также один оператор, который может работать с тремя операндами, такой оператор называется тернарный. Этим оператором является оператор, представляющий собой сокращенную форму записи условного оператора if, о котором мы поговорим позже, когда будем рассматривать условные операторы.

Операторы сравнения PHP

Операторы сравнения PHP используются для сравнения двух значений (число или строка):

Оператор Имя Пример Результат Запуск
== Equal $x == $y Возвращает значение true, если $x равно $y
=== Identical $x === $y Возвращает значение true, если $x равно $y, и они имеют одинаковый тип
!= Not equal $x != $y Возвращает значение true, если $x не равно $y
<> Not equal $x <> $y Возвращает значение true, если $x не равно $y
!== Not identical $x !== $y Возвращает значение true, если $x не равно $y, или они не одного типа
> Greater than $x > $y Возвращает значение true, если $x больше $y
< Less than $x < $y Возвращает значение true, если $x меньше $y
>= Greater than or equal to $x >= $y Возвращает значение true, если $x больше или равно $y
<= Less than or equal to $x <= $y Возвращает значение true, если $x меньше или равно $y

Все об условиях if, elseif, else

  1. -> пример
  2. -> пример
  3. -> пример
  1. Начнем с перевода:

    If с английского переводится «ЕСЛИ»
    Else с английского переводится «ИНАЧЕ»
    Elseif такого слова в английском не существует – это слово составлено из двух «Else» и «if»

    И переводится соответственно «ИНАЧЕ => ЕСЛИ»

    Далее нам понадобится понимание выполнения программы – программа выполняется сверху -вниз, как течет вода! Только так и никак иначе!

    Обычно представляют вот такое дерево использования if, elseif, else,

    if(Первое условие if)

    {

    Если условие if выполнилось — выполняем всё, что здесь лежит

    }

    elseif(Второе условие)//условия которых может быть много

    {

    Если условие elseif выполнилось — выполняем всё, что здесь лежит

    }

    else

    {

    Здесь выполняем то, что не подошло по условиям

    }

  2. Сделаем динамичное применение условия if, а то в прошлый раз была скукота! Давайте выведем, что унас сейчас со временем…
    echo date(‘G’) = 4
    И поскольку мы сейчас говорим о единичном условии if, и да! Единственное условие if, которое может использоваться без связки с другими условиями! Сделаем два противоположных условия, будут отличаться знаки : большем меньше внутри if, и в зависимости от условия, которое сработает выводим, либо больше либо меньше… Так, конечно не делают, но ведь мы разбираем примеры использования условия if в php
    if(date(‘G’) > 12) { echo ‘сейчас больше 12’;}
    if(date(‘G’) < 12) { echo ‘сейчас меньше 12’;}
    сейчас меньше 12

  3. Мы выше рассмотрели применение сразу двух условий if, и в качестве примера выполнения условий d php — это пойдет, но на самом деле вместо двух условий if, нужно было написать if и else вот так:

    if(date(‘G’) > 12)

    {

    echo ‘сейчас больше 12’;

    }

    else

    {

    echo ‘сейчас меньше 12’;

    }

    Как можно прочитать выше приведенные условия в php!? Если число больше 12, то выводим результат, что число больше 12, иначе(else) выводим, что число меньше 12.

    Как видим во втором случае просто else безо всяких условий! Это последнее выполнение, либо можно назвать состояние по умолчанию… когда никакое из условий не выполняется…

    Далее нам остается вывести результат выполнения одного условия и иначе…

    сейчас меньше 12

    Как видим результат абсолютно аналогичен предыдущему пункту!

  4. Чтобы не ломать голову и не придумывать, какие-то глупые условия, лучше всего взять уже готовый скрипт. который уже написан давно с использованием всех трех условий! Смена картинки по времени

    Не буду касаться всех особенностей, лишь скажу, что 24 часа поделено на 4 части и относительно этих 4 чисел(вернее даже сказать 4 наборов чисел) срабатывают 4 условия if + elseif и else ? мы возьмем оттуда наши условия и модифицируем под нашу тему…

    Здесь в данном случае применяли всего 2 elseif — их может быть очень много… всяких… разных…

    if( date(‘G’) < 6)

    {

    $path = ‘сейчас меньше 6’;

    }

    elseif(date(‘G’) < 12 )

    {

    $path = ‘сейчас меньше 12’;

    }

    elseif(date(‘G’) < 18)

    {

    $path = ‘сейчас меньше 18’;

    }

    else

    {

    $path = ‘сейчас больше 18’;

    }

    echo $path;

    сейчас меньше 6

Вас может еще заинтересовать список тем : #PHP | Последняя дата редактирования : 2020-01-25 09:13
//dwweb.ru/comments_1_5/include/img/hand_no_foto.png
no
no

Вложенные конструкции if-else.

Что называют вложенными конструкциями if-else?  Это такие конструкции, которые состоят из нескольких условий.

Теперь рассмотрим вложенные конструкции if-else. Такие конструкции могут состоять из нескольких условий в выполняемых правилах. Для примера добавим еще две переменные $familiya1 и $familiya2:

$familiya1=»ivanov»;$familiya2=»sidarov»;

Как это выглядит в PHP-коде:

<html>
<head>
<title>основы php на BlogGood.ru</title>
</head>
<body>
<?php
$a=5;
$b=5;
$k=55;
$n=88;
$familiya1="ivanov";
$familiya2="sidarov";

if ($a == $b and $k != $n)
{
if ($familiya1 != $familiya2)
{
echo "Все ОK :)<br>
В переменных familiya1 и familiya2 содержатся разные фамилии.";
}
else
{
echo "Не так все плохо, как вам кажется :(<br>
В переменных familiya1 и familiya2 содержатся одинаковые фамилии.";
}
}
else
{
echo "Не все ОК :(";
}
?>
</body>
</html>

Разъяснение:
Смотрите, здесь были выполнены все условия

if ($a == $b and $k != $n)

Переменная $a равная с переменной $b и переменная $k не равная с $n. Здесь условия были выполнены, а это значит, что будет работать эта часть кода:

if ($familiya1 != $familiya2){echo «Все ОK : )<br>В переменных familiya1 и familiya2 содержатся разные фамилии.»;}

Так как переменные $familiya1  и  $familiya2 между собой не равны и это правда,

$familiya1=»ivanov»;$familiya2=»sidarov»;

то будет работать вот эта часть кода:

{echo «Все ОK : )<br>В переменных familiya1 и familiya2 содержатся разные фамилии.»;}

Смотрим результат! Сохраните код PHP как «if-else.php» в папку «test-1» локального сервера (см. урок 1).

Введите в браузере адрес:

Результат:

Если в переменных $familiya1 и $familiya2 сделать значение одинаковыми:

$familiya1=»sidarov»;$familiya2=»sidarov»; 

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

if ($familiya1 != $familiya2)

Вот по этой причине будет работать вот эта часть кода:

else{echo «Не так все плохо, как вам кажется : (<br>В переменных familiya1 и familiya2 содержатся одинаковые фамилии.»;}

В результате на мониторе вы увидите картинку:

Вот мы и закончили полностью тему «Оператор условия if-else для PHP». Чтобы закрепить «Урок 5» и «Урок 6», рекомендую самостоятельно поработать над созданием собственных условий.

А я пойду готовить для вас новые уроки по основам PHP. Подписывайтесь на обновления блога, если не хотите пропустить уроки по PHP.
Всего хорошего!

Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓

Популярные статьи:

  • Как узнать id компьютера
    Дата: 29 Март 2013
    Прокомментировано:90
    просмотров: 312382

  • Размеры форматов листов А0 – А7
    Дата: 23 Январь 2013
    Прокомментировано:3
    просмотров: 260733

  • Смешные логические загадки с подвохом, отгадки прилагаются
    Дата: 12 Ноябрь 2014
    Прокомментировано:5
    просмотров: 186181

  • Установка windows 7 на ноутбук
    Дата: 18 Декабрь 2012
    Прокомментировано:169
    просмотров: 181098

  • Как включить или отключить Aero в Windows 7
    Дата: 1 Июнь 2013
    Прокомментировано:6
    просмотров: 152594

Deezer

Приложение пользуется популярностью на площадке AppStore. Приложение Deezer имеет одну особенность. После скачивания и регистрации вы выбираете любимые музыкальные направления. И за счет этого, приложение само будет предлагать вам самые популярные группы и треки тех музыкальных направлений, которые вы выбрали.

Данная функция во много раз сократит вам время скачивания и поиска, новых и интересных для вас музыкальных композиций. Также существует функция загрузки понравившейся песни в кэш, что позволит владельцу приложения слушать любимую музыку без интернета.

Типы операндов

Создавая выражения, необходимо обращать внимание на типы операндов, с которыми работает каждый из операторов, потому что каждый оператор ожидает получить операнды конкретного типа данных. Например, нельзя выполнить умножение двух строк

'a' * 'b'

Однако PHP старается максимально облегчить вам жизнь, автоматически выполняя необходимые преобразования типов операндов для конкретных операторов. Следующее выражение вполне допустимо:

'10' * '10'

В этом выражении интерпретатор PHP автоматически преобразует строки в числа и перемножает их. Но иногда такое автоматическое преобразование невозможно, поэтому будьте внимательны и следите за используемыми типами операндов.

Примечание: Когда PHP выполняет автоматическое преобразование типа, это называется неявным приведением типа, если преобразование типа выполняется вручную — это называется явным приведением типа.

Оператор if else

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

Синтаксис оператора :

Оператор else не является обязательным. Блок инструкций расположенный после выполняется по умолчанию, т.е. когда условное выражение в возвращает значение . Оператор не может быть использован отдельно от оператора . Блок должен располагаться только после оператора , его можно рассматривать, как действие по умолчанию.

Немного изменив наш предыдущий пример, мы можем увидеть, как работает оператор , если условие возвращает значение :

<?php

  $username = 'Holly';

  if ($username == 'Admin') {
    echo 'Добро пожаловать на страницу администратора.';
  }
  else {
    echo 'Добро пожаловать в гостевую страницу';
  }

?>

Оператор может быть вложенным. Такие вложенные условные операторы встречаются на практике достаточно часто. Оператор является вложенным, если он расположен внутри другого блока или . Если в коде используется несколько операторов подряд, то всегда относится к ближайшему :

<?php

  if($i) {                // внутренний блок if($i)
    if($a) инструкция;
    if($b) инструкция; 
    else  инструкция; // этот else относится к if($b) - так как он ближе 
  }
  else инструкция; // этот else относится к if($i)

?>

Последний не относится к , так как он находится не во внутреннем блоке, поэтому ближайший к нему получается . Оператор расположенный внутри блока относится к , потому что этот — является ближайшим к нему.

Урок 5. Условные конструкции в php – конструкция if

Как правило, выражения в php программе выполняются в порядке их написания в исходном коде. Для изменения этого порядка нужно использовать условные конструкции. Такая необходимость возникает перед программистом php практически в любой программе, когда при выполнении определенного условия должен выполняться один блок скрипта, а при выполнении иного условия – другой. Таким образом, PHP сценарии – очень гибкие и могут зависеть от множества условий.

Основой работы всех конструкций является проверка условий на истинность или ложность. В зависимости от результата такой проверки интерпретируется тот или иной блок php скрипта. Давайте рассмотрим следующий пример:

$color = «Красный»

Если переменная $color будет иметь значение «Красный», то выражение – истинно, в обратном же случае оно – ложно. Результатом такого выражения могут быть TRUE или FALSE  соответственно. В языке PHP есть 2 основные условные конструкции: if и switch. Хотя у них и одинаковые задачи, каждая используется обычно в отдельных случаях.

Конструкция if

В языке PHP есть несколько способов записи конструкции if. В самом простом способе if проверяет ложность или истинность определенного условия и в зависимости от результата проверки выполняет или не выполняет группу выражений, размещенных в фигурных скобках.

В данном случае конструкция if будет иметь следующий формат записи:

<?php
if(какое-либо условие){
Блок выражений
}
?>

Код в фигурных скобках выполниться, если условие будет истинным. В ином случае блок выражений будет просто пропущен.

Рассмотрим пример:

<?php
$b=5;
if($b<10){
echo $b . «меньше десяти»;
}
?>

В этом примере переменной $b присваивается значение 5. Потом осуществляется сравнение 5<10. Как мы видим, оно – истинно, поэтому заключенный в фигурные скобки код будет выполняться. В результате на экран будет выведена фраза 5 меньше десяти.

Приведенный выше способ записи может быть немного усложнен с помощью команды else. Синтаксис расширенного формата следующий:

<?php
if(какое-либо условие){
Блок выражений
}
else{
Другой  блок выражений
}
?>

Если условия в if – истинно, тогда будет выполняться первый блок выражений, если ложно – второй блок.

На этом возможности if не заканчиваются. В скрипт можно добавлять любое количество дополнительных проверок. Для этого используется команда  elseif. Тогда способ записи полной формы if может быть, например, таким:

<?php
if(какое-либо условие){
Блок выражений 1
}
elseif{
Альтернативный блок выражений 2
}
else{
Альтернативный блок выражений 3
}
?>

В теории количество блоков elseif не ограничивается, однако не нужно переборщивать с их созданием. Для закрепления материалов урока о конструкции if, рассмотрим еще один пример:

<?php
if (!$_POST){
echo “<form action=’’ method=’POST’>
<h3>Укажите число:</h3>
<input type=’text’ name=’digit’>
<input type=’submit’ name=’submitt’ value=’ok’>
</form>”;
}
else{
$digit=$_POST;
if ($digit<0){
echo “Данное число меньше нуля”;
}
elseif ($digit>=0){
echo “Это число больше или равно нулю”;
}
else{
echo “Это не число”;
}
}
?>

В этом примере на экран выводится форма для ввода любого числа. После отправки введенные данные проверяются и, в зависимости от результата, выводится то или иное сообщение

Обратите внимание! По логике, если вместо числа ввести, например, обыкновенную строку — «hello», то на экране должно появиться “Это не число”. Но на самом деле выполниться условие  $digit>=0, так как язык php автоматически преобразует типы данных, а в данном случае строка будет равняться 0

Логическое И (AND и &&)

Оператор логическое И обозначается как или . Он выполняет операцию «логическое И» над двумя операндами. Он возвращает тогда и только тогда, когда оба операнда имеют значение . Если один или оба операнда возвращают значение , оператор возвращает . Смысл двух разных вариантов записи оператора «логическое И» такой же как и у двух предыдущих операторов, а именно в том, что они работают с различными приоритетами.

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

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

Для понимания рассмотрим теперь, как это работает на практике:

<?php

  // Оператор "&&" имеет больший приоритет, чем "and"

  // Результат выражения (true && false) будет присвоен переменной $bar1
  // Действие приоритета: $bar1 = (true && false)
  $bar1 = true && false;


  // Сначала переменной присваивается значение true, а затем вычисляется второй операнд
  // Действие приоритета: ($bar2 = true) and false
  $bar2 = true and false;  

  var_dump($bar1, $bar2);

  // ($bar3 = 9) and 3
  $bar3 = 9 and 3; 

  echo "<br>$bar3";   // => 9

?>

Тернарный оператор PHP

Тернарный оператор, т.е. с тремя операндами, имеет достаточно простой синтаксис, в котором слева от знака записывается условие, а справа — два оператора разделенные знаком , слева от знака выполняется оператор при истинности условия, а справа от знака выполняется оператор при ложном условии.

Пример: если значение переменной меньше 60, то выводить сообщение «Показания скорости в норме», иначе выводить сообщение «Скорость превышена!»

1
2
3
4
<?php
$speed = 45;
echo ($speed < 60) ? "Показания скорости в норме"  "Скорость превышена!"; 
?>

Задание php 3_5: выполнить предыдущее задание (), используя тернарный оператор и

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector