2015-09-09 90 views
2

我想檢查我的數據庫中的任何用戶是否在categorie_bit中的值爲0或1,並在我的foreach之前檢查它。PHP Sql檢查是否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"; 
} 
+0

'if result <0'? – aldrin27

+0

我不知道你的意思 – as21

+0

不確定你的僞代碼有什麼意義。你能用英文來描述你想要做什麼嗎? – Anders

回答

0

「當然,我想檢查我的數據庫中的任何用戶categorie_bit爲0或1我的foreach之前的值」

如何在SQL

... WHERE categorie_bit = 1 OR categorie_bit = 0 

,或者該檢查categorie_bit是否設置(假設它可以是0,1或NULL)

WHERE categorie_bit IS NOT NULL 
1

您可以通過使用while循環的迭代,而不是實現同樣的事情foreach。在每次迭代的$row變量是來自下表中的行:

$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 
    } 

} 
+1

我想這可能是OP想要做的,但爲了防止類別位可以有其他值,我稍微改變了一下代碼。我希望你不要介意。 – RiggsFolly

+1

你的猜測和我一樣好!關於其他可能的值的好處,我只是假設1或0。謝謝! –