0

当我运行以下查询时:

$where = array(
    $request->get("order_item_id"), //an array with integers
);
$types = array(
    \Doctrine\DBAL\Connection::PARAM_INT_ARRAY
);

$sql = "SELECT id,store_id FROM order_items WHERE id IN (?) ORDER BY id";
$query = $app['db']->executeQuery($sql, $where, $types);
$order_items = $query->fetchAll();

我明白了:

Array
(
    [0] => Array
        (
            [id] => 1
            [0] => 1
            [store_id] => 11
            [1] => 11
        )

    [1] => Array
        (
            [id] => 6
            [0] => 6
            [store_id] => 11
            [1] => 11
        )

    [2] => Array
        (
            [id] => 11
            [0] => 11
            [store_id] => 11
            [1] => 11
        )

我不明白为什么我会返回额外的 0 和 1 val。

4

1 回答 1

2

尝试:

$order_items = $query->fetchAssoc();

对于只有字段名称的一行返回。

或尝试将 PDO::FETCH_ASSOC 传递给 fetchAll() 函数。

于 2013-05-17T08:47:11.093 回答