2013-12-10 2 views
0

В Wordpress есть функция (has_filter), которая возвращает false или integer.распознает `0` как истинный в PHP, если оператор

Я хочу признать 0 истинным в выражении if, поэтому я пишу вот так.

if(!(false === has_filter($tag, $function_to_check))) 
{ 
    echo "true!"; 
} 

Но я думаю, что этот код немного сложный. Есть ли лучший способ писать в такой ситуации?

Я задаю этот вопрос не в wordpress.stackexange.com, потому что он касается самого php.

+0

Работает ли этот код? Если это так, то плохо? Это может показаться вам сложным, но если он работает, это выглядит хорошо для меня. –

+0

Код - это код. Иногда это выглядит плохо, даже если это лучший способ добиться чего-то. –

+1

вы можете изменить 'if (! (... === ...))' в 'if (...! == ...)' –

ответ

0

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

if (has_filter($tag, $function_to_check) !== false) { 
    echo "true!"; 
} 
0

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

if(false !== has_filter($tag, $function_to_check)) 
{ 
    echo "true!"; 
} 

Потому что делать if (!(... === ...)) такое же как делать if (... !== ...)

Смежные вопросы