Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.69/88: Рейтинг темы: голосов - 88, средняя оценка - 4.69
янгл
6 / 6 / 0
Регистрация: 23.07.2009
Сообщений: 237
1

Восклицательный знак в условии if

29.01.2012, 17:27. Просмотров 17211. Ответов 5
Метки нет (Все метки)

Привет. Что означает восклицательный знак в условии if?
Например так:
PHP
1
if (!func())
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2012, 17:27
Ответы с готовыми решениями:

В тексте в конце каждого предложения, поставить восклицательный знак "!"
В тексте в конце каждого предложения, поставить восклицательный знак "!" помогите сделать, или...

В тексте перед каждым предложением, в котором встречается заданное слово, поставить восклицательный знак "!"
В тексте перед каждым предложением, в котором встречается заданное слово, поставить восклицательный...

В тексте перед каждым предложением, в котором встречается заданное слово, поставить восклицательный знак "!"
В тексте перед каждым предложением, в котором встречается заданное слово, поставить восклицательный...

Восклицательный знак
Подскажите пожалуйста как поставить на форму восклицательный знак в желтом треугольнике 'Внимание'...

Восклицательный знак!
Подскажите пожалуйста, как вывести изображение треугольника с восклицательным знаком в сообщении...

5
Art-corp
25 / 25 / 3
Регистрация: 26.01.2012
Сообщений: 54
29.01.2012, 17:36 2
Если без восклицательного знака, то в том случае, если функция func() вернёт true, тело условия будет выполнено. В противном случае - наоборот, не выполнится.

В случае, если перед функцией стоит "!", всё наоборот - тело условия выполнится, если функция вернёт false.

Логическое отрицание.
3
Art-corp
25 / 25 / 3
Регистрация: 26.01.2012
Сообщений: 54
30.01.2012, 00:11 3
QFT, вы прям синонимайзер. Замечательная возможность форума. (сарказм)
1
xat55
0 / 0 / 0
Регистрация: 24.02.2019
Сообщений: 31
13.04.2019, 20:12 4
Добрый вечер.
Помогите, пожалуйста. Изучаю рекурсию. Встретил в сети такой код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function factory($n) 
{ 
   if(!$n) 
   { 
      return("Факториал числа $n не существует."); 
   } 
   else 
   { 
      if($n <= 1){return 1;} 
      return $n * factory($n-1); // здесь происходит повторный вызов функции 
   } 
 
} 
 
echo factory(5);  // 120 
?>
В этой строчке:
PHP
1
 if(!$n)
Знак "!" - это логическое отрицание? Если да, то в контексте этого кода, какой смысл несет этот знак? Если "!$n" - это "не $n", а "не $n" это что? Допускаю, что это нуль. Не проще ли в коде было указать:
PHP
1
if($n == 0)
0
Jodah
Эксперт PHP
3403 / 2875 / 1207
Регистрация: 01.08.2012
Сообщений: 9,944
13.04.2019, 23:38 5
Цитата Сообщение от xat55 Посмотреть сообщение
Знак "!" - это логическое отрицание?
Да.

Цитата Сообщение от xat55 Посмотреть сообщение
какой смысл несет этот знак?
Берётся значение, лежащее в $n. Превращается в булев тип (true/false). Затем ! изменяет это значение на противоположное.

Т.е. условие if(!$n) означает, что условие выполнится, когда в $n будет значение, приводимое к false (для PHP это null, 0, false, пустая строка, пустой массив, строка "0").

Цитата Сообщение от xat55 Посмотреть сообщение
Не проще ли в коде было указать:
1 символ или 4 - что проще?
1
Jewbacabra
Эксперт PHP
4036 / 3318 / 1429
Регистрация: 24.04.2014
Сообщений: 10,022
14.04.2019, 00:15 6
Цитата Сообщение от xat55 Посмотреть сообщение
Не проще ли в коде было указать: if($n == 0)
Было бы лучше, т.к явно указывается что конкретно проверяется, не полагаясь на неявные преобразования int к bool (хотя оно все равно будет при таком сравнении, чтобы вообще хорошо было можно использовать строгое сравнение ===)
1
14.04.2019, 00:15
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2019, 00:15

Заменить восклицательный знак
Помогите решить задачу. Нужно в набранной строке заменить ! на ? using namespace System

Красный восклицательный знак
что означает красный восклицательный знак на иконке документа word?

Восклицательный знак в Swift
Всем привет! Начал опыты со Swift, и тут же столкнулся с модификаторами ? и ! (назову их так)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.