我想從數據庫查詢創建一個數組。我想通過他們的ID選擇10個隨機問題,並把它們放入一個數組中,只是這個ID,我不希望它像[0]=>array('1'),[1]=>array('2')
,我想簡單地說,array('1','2','3')
等。從數據庫結果創建一個數組
他們之後在陣列中,我希望能夠檢查ID是否在陣列中
我想從數據庫查詢創建一個數組。我想通過他們的ID選擇10個隨機問題,並把它們放入一個數組中,只是這個ID,我不希望它像[0]=>array('1'),[1]=>array('2')
,我想簡單地說,array('1','2','3')
等。從數據庫結果創建一個數組
他們之後在陣列中,我希望能夠檢查ID是否在陣列中
如果您使用PDO php擴展名,請使用http://www.php.net/manual/en/pdostatement.fetchcolumn.php將該列的值作爲單暗陣列檢索。
try {
$pdo = new PDO([dsn], [username], [password]);
$sql = "
SELECT ID
FROM [tablename]
ORDER BY RAND()
LIMIT 10
";
$statement = $pdo->prepare($sql);
if (!$statement) {
//error handling here
}
$result = $statement->execute();
if (!$result) {
//error handling here
$array = array();
while (list($id) = $statement->fetch(PDO::FETCH_NUM)) {
$array[] = $id;
}
$statement = NULL;
} catch (PDOException $e) {
//error handling here
}
這應該離開ID的
'陣列的枚舉陣列([0] => '1',[1] => '2',[2] => '3')'與'array('1','2','3')'相同。你可以用'print_r(array('1','2','3'))'來檢查。至於檢查數組中有什麼,看看[in_array函數](http://php.net/manual/en/function.in-array.php) –
如果你創建數組('1','2' ,'3')你會得到[0] =>'1',[1] =>'2',[3] =>'3'。 ['id'=> 1],['id'=> 3],['id'=> 4],['id'=> 5],我推薦獲取更多關於PHP –
的信息。 ] NOT [0 => 1,1 => 3,...] –