データベース クエリから配列を作成したいと考えています。ID で 10 個のランダムな質問を選択し、それらを配列に入れたい、ID だけにしたい、みたいにしたくない[0]=>array('1'),[1]=>array('2')
、単純にしたい、array('1','2','3')
など.
それらが配列に入った後、IDが配列にあるかどうかを確認できるようにしたいと思います
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の列挙型配列が残るはずです。
PDO php 拡張機能を使用する場合は、http: //www.php.net/manual/en/pdostatement.fetchcolumn.phpを使用して、列の値を 1 次元配列として取得します。