【发布时间】:2016-11-29 15:32:59
【问题描述】:
我有这个问题:
$all = $dbh->query("SELECT DISTINCT movimenti.nome, SUM(movimenti_carta.importo)
FROM movimenti_carta JOIN movimenti ON movimenti_carta.movimento=movimenti.id
WHERE month(data)='$mese' AND year(data)='$anno' GROUP BY movimenti.nome");
它从我的数据库中检索两列。我想要做的是将每一列放在一个单独的数组中。 如果我这样做:
$labels=$all->fetchAll(PDO::FETCH_COLUMN,0);
我以我正在寻找的格式获取第一列的值。 我试着做:
$values=$all->fetchAll(PDO::FETCH_COLUMN,1);
在第一次获取之后,但 $all 未被第一次获取设置,结果是 $values 是一个空数组(我很确定这一点,但确实试了一下)。
在获取包含两列的数组后,我可以在 php 中构建数组,但我想知道如何使用 PDO api 实现我的目标。
【问题讨论】:
-
也许使用第二个变量 $second = $all;或 $second = clone($all) ?
-
也许您可以使用
while+fetch并将所有元素放入适当的数组中? -
@fky 这不起作用
-
@u_mulder 你的意思是一个获取然后创建两个数组吗?是的,我可以做到,但我希望从一开始就创建两个数组。也许这是不可行的,我必须在 php 中操作数组
-
我想这是不可行的。