PHP Sql 检查foreach是否

PHP Sql Check if foreach

我想检查我的数据库中是否有任何用户 categorie_bit 的值为 0 或 1,并在我的 foreach 之前检查它。

我在 php 脚本中得到了这个:

foreach ($database->query('SELECT id,firstname,lastname FROM `staff` WHERE categorie_bit = 1') as $resultRandom) {
    var_dump($resultRandom);
}

伪代码(我想要这样的东西):

if(categorie_bit = 1) {
    foreach ($database->query('SELECT id,firstname,lastname FROM `staff` WHERE categorie_bit = 1') as $resultRandom) {
        var_dump($resultRandom);
    }
} else {
      echo "0";
}

您可以通过使用 while 循环而不是 foreach 进行迭代来实现相同的目的。在每次迭代中,$row 变量是来自 table:

的行
$result = $database->query('SELECT * FROM `staff`');

while($row = $result->fetch_array(MYSQLI_ASSOC)) { 

    if($row['categorie_bit'] == 0) {
        //Do something for 0's
    }    
    if($row['categorie_bit'] == 1) {
        //Do something for 1's
    }

}

"Sure, I want to check if any user in my Database has in categorie_bit a value of 0 or 1 before my foreach"

你的SQL

怎么样
... WHERE categorie_bit = 1 OR categorie_bit = 0

或者,这会检查是否设置了 categorie_bit(假设它可以是 0、1 或 NULL)

WHERE categorie_bit IS NOT NULL