fetchall(PDO)结果集迭代不返回$ key => $ value的值

时间:2016-03-23 02:09:13

标签: php mysql pdo

我正在尝试遍历结果集并获取列名和值,以便使用PHPExcel导出数据,但$qVistadet->fetchall在以下代码中不起作用,并且会出现{{1}之类的错误}。

但是undefined offset,但是因为它只返回结果集中的第一行,所以它没用。

有人可以帮忙解决这个问题吗?

$qVistadet->fetch

1 个答案:

答案 0 :(得分:0)

以下更改解决了问题。谢谢。

$qVistadet = $db->prepare( "CALL spvistadetailsbystaffid(?)" );
$qVistadet->bindParam ( 1, $staffid );
$qVistadet->execute();


$col=0;
$row1=2;
while ($arrValues = $qVistadet->fetch(PDO::FETCH_ASSOC))
    {

        foreach ($arrValues as $key=>$value){

            $sheet->setCellValueByColumnAndRow($col, 1, $key);
            $sheet->setCellValueByColumnAndRow($col, $row1, $value);
            $col++;
            }
        $row1++;
        $col=0;
    }