Использование логического результата в цикле while для отображения условного результата - PullRequest
2 голосов
/ 20 октября 2011

У меня есть вопрос.Я использую скрипт, который проверит домен в моей базе данных.Если есть совпадение, то это будет TRUE.

while( $row = mysql_fetch_array($result) ) {       
    echo var_dump($phpgsb->doLookup($row['origin'])). " - ". $row['origin'];
    echo "<br>";
}

$row['origin'] - это массив домена.Пример:

test.com
lol.com
what.com
blabla.com

И вывод, который я получаю:

bool(false) - test.com.
bool(false) - lol.com.
bool(true) - what.com.
bool(false) - blabla. 

what.com в моей базе данных, поэтому это TRUE.Теперь проблема в том, что я не знаю, как использовать / использовать заглавные буквы / использовать (извините, мой английский не очень хороший) истинный результат.Есть ли в любом случае, я мог бы создать в цикле while:

if (bool == true) {
    only echo the true result
}

Я сделал это с результатами ассоциативных массивов.Я не знаю, как это сделать boolean.

1 Ответ

4 голосов
/ 20 октября 2011

Если вы пытаетесь найти запись, которую $phpgsb->doLookup($row['origin']) возвращает true при передаче в текущей строке вашего запроса базы данных, выполните:

while ($row = mysql_fetch_array($result)) {
    if ($phpgsb->doLookup($row['origin']) === true) {
        echo var_dump($phpgsb->doLookup($row['origin'])). " - " . $row['origin'];
        echo "<br>";
    }
}

Обратите внимание на ===, который проверяетТип И значение.== является проверкой falsy и поэтому может возвращать условия, которые оценивают 0 == false (или 1 == true) как истинное утверждение (я).

...