2011-11-17 47 views
2

在MySQL的寫select語句,如果我想拉其中一列的值等於數值的一個記錄,我可以說是這樣的:是否有與mySQL的IN相當的PHP?

SELECT * FROM myTable WHERE myColumn IN(1,5,7) 

是實現在類似的唯一途徑PHP與OR?

if($category == 1 || $category == 5 || $category == 7) { 
    // do something 
} 
+0

如果你不喜歡if語句的風格,您可以使用一個開關。可能偏離主題。 – Tim

+0

我知道關於開關,但因爲我需要爲所有的值做同樣的事情,所以將它們拆分出來看起來很愚蠢。 – EmmyS

回答

11

請參閱in_array()函數。

例如爲:

$list = array(1, 5, 7); 
if (in_array($category, $list)) { 
    // do something 
} 

或者,更簡潔:

if (in_array($category, array(1, 5, 7))) { 
    // do something 
} 
+0

謝謝!我以前怎麼不知道這些? – EmmyS

2

是的,這是in_array

您可以檢查該值如果是在陣列。

$categories =array(1,5,7); 
if (in_array($category, $categories)) 
{ 
    //do stuff 
} 
相關問題