在查询中获取特定列

时间:2017-08-05 17:08:00

标签: php pdo

我有这个PHP代码来获取查询的数据。

$result = $stmt->fetchAll();

结果是:

array(1) (
  [0] => array(2) (
    [min_date] => (string) 2017-04-27
    [0] => (string) 2017-04-27
  )
)

我只需要获取min_date值。帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

查看array_column()函数。它专门用于这样的事情。

获取' min_date'的列表所有回忆的价值观:

$min_dates = array_column($result, 'min_date');

只获得第一个:

$min_date = $result[0]['min_date'];

但如果查询中没有返回记录,则会导致错误,因此如果发生这种情况,请执行此操作

$min_date = isset($result[0]['min_date'])?$result[0]['min_date']:'not_found';

获取(字符串)' not_found'如果没有结果或

$min_date = isset($result[0]['min_date'])?$result[0]['min_date']:false;

得到(bool)假。你明白了。

答案 1 :(得分:0)

您需要做的就是添加PDO :: FETCH_COLUMN争论。

$min_date = $stmt->fetchAll(PDO::FETCH_COLUMN, 0)[0];

假设min_date是SQL查询表中的第一列。

编辑:最佳方式:

$min_date = $stmt->fetch(PDO::FETCH_COLUMN, 0);