在 PHP 中,是不是可以使用 PDO 获取一维数组? [复制]

Posted

技术标签:

【中文标题】在 PHP 中,是不是可以使用 PDO 获取一维数组? [复制]【英文标题】:In PHP, is it possible to get a 1 dimmensional array using PDO? [duplicate]在 PHP 中,是否可以使用 PDO 获取一维数组? [复制] 【发布时间】:2011-12-16 19:04:53 【问题描述】:

这似乎应该(并且可能是)微不足道的。我有一个简单的查询:

SELECT Name From User;

当我使用此代码运行查询时:

$rows = $preparedStatement->fetchAll(PDO::FETCH_ASSOC);

$Rows 看起来像这样:

Array ( [0] => Array ( [Name] => Doug ) [1] => Array ( [Name] => John ) )

有没有一种简单的方法可以使数组看起来像这样:

Array( Doug, John)

【问题讨论】:

【参考方案1】:

我认为right answer has been given by Jaison Erick,如果您需要展平返回的内容(不是很推荐),可以这样做:

$flat = reset((call_user_func_array('array_merge_recursive', $rows)));

【讨论】:

【参考方案2】:

使用常量 PDO::FETCH_COLUMN:

$columnNumber = 0;
$rows = $preparedStatement->fetchAll(PDO::FETCH_COLUMN, $columnNumber);

这样你会得到你所建议的。

您还可以执行以下操作:

$columnNumber = 0;
$rows = $preparedStatement->fetchAll(PDO::FETCH_COLUMN|PDO::FETCH_UNIQUE, $columnNumber);

这样您将获得一个具有唯一值的数组。

来源:http://www.php.net/manual/en/pdostatement.fetchall.php

【讨论】:

以上是关于在 PHP 中,是不是可以使用 PDO 获取一维数组? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 PDO 在 PHP 中获取结果数组?

如何使用PDO在PHP中获取结果数组?

PHP基础PHP教程(PDO)

PHP中的pdo

在 PHP 中使用 PDO 打开的 SQL 连接是不是必须关闭

为啥在 PHP 中使用 PDO 而不是 MySQL? [复制]