0

想象一下,您必须查询数据库才能检索一些数据(在此示例中为姓名和年龄):

while ($submission = db_fetch_array($submissions)) {
  $data[] = $submission['data'];
}

因此 $data 数组的结果转储将类似于:

Array
(
  [0] = "John"
  [1] = "33"
)

如果我想形成描述性键,生成的代码将是:

while ($submission = db_fetch_array($submissions)) {
  $data[] = $submission['data'];
}

$data['name'] = $data[0];
$data['age'] = $data[1];

现在,如果我的数组中不是只有两个字段,而是有 10 个或更多字段,这在我看来有点多余。

有没有更合乎逻辑的方法来做到这一点?

注意: db_fetch_array 它是一个 Drupal 抽象,以便将查询作为数组获取

4

1 回答 1

1

现在不要,db_*()应该是什么,但我建议直接从数据库中获取数组作为关联数组

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
  $data[] = $row;
}

这会产生一个关联数组的数组,其中内部关联数组的键是列的名称。

http://php.net/pdostatement.fetch

于 2012-07-20T11:23:44.780 回答