[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Что это значит?
Shuriken
Привет всем!

Я только начал изучать PHP. Изучаю на Intuit.ru. В примере столкнулся вот с таким $day = ($b_day > $d ? 30 - $b_day + $d : $d - $b_day);

Что значит выражение в скобках. В предыдущих уроках таког не было.

Зараннее благодарен



Спустя 15 минут, 11 секунд (22.02.2012 - 13:27) m4a1fox написал(а):
Shuriken
Это тернарный оператор. Удачи в изучении.... если поможет (хотя прикольнее самому понять) то ваша строка
 
$day = ($b_day > $d ? 30 - $b_day + $d : $d - $b_day);

равносильна записи

if($b_day > $d)
$day = 30 - $b_day + $d;
else
$day = $d - $b_day;

Спустя 3 минуты, 47 секунд (22.02.2012 - 13:31) GET написал(а):
Это тернарный оператор PHP, сокращенная и вроде как более быстрая операция, но менее читаемая.

эквивалент:

if ($b_day > $d)
{
$day= 30 - $b_day + $d;
}
else
{
$day=$d - $b_day;
}


Эх...не успел :)

Спустя 3 минуты, 53 секунды (22.02.2012 - 13:34) Shuriken написал(а):
Цитата (m4a1fox @ 22.02.2012 - 10:27)
Shuriken
Это тернарный оператор

Спасибо за помощь wink.gif

Спустя 32 секунды (22.02.2012 - 13:35) m4a1fox написал(а):
A.B.C.
хай..... твой код

if ($b_day > $d)
{
$day= 30 - $b_day + $d;
}
else
{
$day=$d - $b_day;
}

можно без фигурных скобок записать

if($b_day > $d)
$day = 30 - $b_day + $d;
else
$day = $d - $b_day;

Спустя 5 минут, 33 секунды (22.02.2012 - 13:41) GET написал(а):
m4a1fox

Да верно, это я просто для наглядности, человек только начал изучать поэтому решил разжевать

Спустя 15 минут, 8 секунд (22.02.2012 - 13:56) m4a1fox написал(а):
A.B.C.
Цитата
Да верно, это я просто для наглядности, человек только начал изучать поэтому решил разжевать

не не... все верно.... это я так, просто можно сократить 4 строчки... smile.gif

Спустя 49 минут, 14 секунд (22.02.2012 - 14:45) FatCat написал(а):
Как-то непривычно круглые скобки, я привык в круглые скобки брать условие:
$day = ($b_day > $d) ? 30 - $b_day + $d : $d - $b_day;

Спустя 42 минуты, 53 секунды (22.02.2012 - 15:28) Commander Keen написал(а):
вот ссылка на заметку о тернарном операторе от Игорь_Vasinsky. Всё понятно.

Спустя 38 минут, 49 секунд (22.02.2012 - 16:07) neadekvat написал(а):
Это что, в статьях для начинающих такое писать начали?

Спустя 1 час, 30 минут, 28 секунд (22.02.2012 - 17:37) inpost написал(а):
Лучше всего брать абсолютно весь тернарный оператор в скобки, иначе есть проблемы в некоторых случаях.
(question ? true : false)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.