Как лечить булево? - PullRequest
       4

Как лечить булево?

0 голосов
/ 19 октября 2011

Я получил логическое значение из запроса, и я хочу проверить, является ли логическое значение больше нуля. Можно ли изменить подход, используемый при обработке ресурсов, для проверки логического значения? (См. Пример обработки ресурса ниже:)

return (mysql_result($query, 0) == 1) ? true : false;

Любая помощь приветствуется. Заранее спасибо.

Ответы [ 3 ]

1 голос
/ 19 октября 2011

Поскольку PHP будет интерпретировать как строку, вы можете просто привести его как (bool)

return (bool)(mysql_result($query, 0));

Ненулевые значения приведут к TRUE. Обратите внимание, что вы должны делать это только в том случае, если возвращаемые значения равны 0 или 1. Отрицательные значения будут преобразованы в TRUE.

var_dump((bool)"1");
// bool(true)
var_dump((bool)"0");
// bool(false)
var_dump((bool)-2);
// bool(true)
0 голосов
/ 19 октября 2011

Я получил логическое значение из запроса

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

Я хочу проверить, является ли значение логического значения больше нуля.

  1. логические значения не могут быть измерены таким образом.логическое значение может быть истинным или ложным.или вам это нравится - ноль или не ноль.не "больше", а просто "нет".

  2. Оператор «больше чем» в PHP равен >.Таким образом, вы можете использовать его в своем выражении вместо оператора equal (== один)

0 голосов
/ 19 октября 2011

Просто сделай return mysql_result($query, 0) == 1;

Не делай что-то вроде return $a_boolean_value ? true : false;.

...