如何从列中获取所有值(如id列)并将它们放入数组中?
我正在使用PDO API并尝试使用其他代码,但它并不适用于我。
$STH = $DBH->query('SELECT Tid from Playlist ');
$STH->setFetchMode(PDO::FETCH_OBJ);
$result = $STH->fetch();
while($result = mysql_fetch_array($result)) {
$ids_array[] = $result['Tid'];
}
答案 0 :(得分:3)
您可以通过指定PDO::FETCH_COLUMN
直接返回id数组。
$stmt = $DBH->query("SELECT Tid from Playlist");
$ids_array = $stmt->fetchAll(PDO::FETCH_COLUMN);
答案 1 :(得分:2)
您正在混合使用mysql_*
和PDO
,这显然不起作用。
只需fetchAll()
您的结果,然后只需使用array_map()
循环遍历所有行并返回id即将所有行合并到一个数组中,例如。
$stmt = $DBH->query("SELECT Tid from Playlist");
$result = $stmt->fetchAll(PDO::FETCH_OBJ);
$ids = array_map(function($v){
return $v->Tid;
}, $result);
print_r($ids);