如何在获取之前访问列值?

时间:2016-01-10 18:01:00

标签: php mysql pdo

在获取查询之前,我需要一列的值。像这样:

// mytable
+----+-------+
| id | codes |
+----+-------+
| 1  | 102   |
| 2  | 64    |
| 3  | 563   |
| 4  | 79    |
+----+-------+

我的查询:

$db = new PDO("mysql:host=localhost;dbname=mydb", "root", "");
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$sth = $db->prepare("SELECT * FROM mytable");
$sth->execute();

/* I need to those numbers in the codes-column as an array in here */

while ($results = $sth->fetch()) {
    var_dump($results);
}

那么,如何在上面的代码中[0]=>102, [1]=>64, [2]=>563, [3]=>79之前访问此数组while()

注意:最好不使用fetchAll();

1 个答案:

答案 0 :(得分:0)

您的问题就像在说如何在不提取数据的情况下获取数据?

这显然是不可能的,您需要在应用程序的某个时刻获取它。

if($results = $sth->fetch()) {
    var_dump($results);
}