当我运行以下查询时:
$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秒。
答案 0 :(得分:2)
尝试:
$order_items = $query->fetchAssoc();
对于只有字段名称的一行返回。
或尝试将PDO :: FETCH_ASSOC传递给fetchAll()函数。