对MySQL的查询:
SELECT `group_id`
FROM `j30_user_usergroup_map`
WHERE `user_id` =3065
返回以下结果:
但是,在PHP中使用以下代码:
$db = new PDO('mysql:host=localhost;dbname=', '', '');
$sth = $db->prepare('SELECT `group_id`
FROM `j30_user_usergroup_map`
WHERE `user_id` =3065');
$sth->execute();
$result = $sth->fetch(PDO::FETCH_ASSOC);
print_r($result);
回归:
( [group_id] => 2 )
我想要数组的所有元素,而不仅仅是第一个,如here
所述答案 0 :(得分:1)
您有两种方法可以解决此问题,按fetch()
更改fetchAll()
或使用while
并返回新数组。
1)FetchAll approch
变化:
$result = $sth->fetch(PDO::FETCH_ASSOC);
人:
$result = $sth->fetchAll(PDO::FETCH_ASSOC);
2)虽然approch
$items = array();
while($row = $sth->fetch(PDO::FETCH_ASSOC)){
$items[] = $row;
}