【问题标题】:sql result as array of arrayssql 结果作为数组的数组
【发布时间】:2013-08-26 03:41:26
【问题描述】:

我正在尝试将 sql 查询的输出格式化为数组数组,以便在我的 sql 数据上使用 gannti 类图工具。我不是很有经验(在工业 plc 之外),尽管有很多谷歌搜索,但我似乎无法找到解决这个特定问题的方法。

我要执行的 sql 查询如下所示:

$query = "SELECT label, start, end from oppgaver ";

而甘蒂类示例中显示的原始数组是这样写的:

$data = array();

data[] = array(
  'label' => 'alarmkit',
  'start' => '2013-08-01',
  'end'   => '2013-09-10'
);

$data[] = array(
  'label' => 'Stekeovnskontroller',
  'start' => '2013-08-22',
  'end'   => '2013-09-01'
);

$data[] = array(
  'label' => 'Tull og fanteri',
  'start' => '2013-09-02',
  'end'   => '2013-09-10'
);

然后你打电话给甘蒂做这件事:

$gantti = new Gantti($data, array(
  'title'      => 'Elektro',
  'cellwidth'  => 15,
  'cellheight' => 35,
  'today'      => true
));

一切正常,除了我无法将 sql 输出格式化为我认为是数组的数组,因此 gantti 类可以发挥它的魔力。我让它在 sql 数据库中显示每个标签的第一个字母一次,但是我写的那段损坏的代码可能应该被遗忘:-)

这里有人知道如何做到这一点吗?

更新:

我尝试获取数据的最后一种方法是使用 msql_fetch_assoc。 不幸的是,我没有记录我采用的不同方法。 我还尝试了几个使用 mysql_fetch_array 和 mysql_fetch_row 的示例。

$query = "SELECT label, start, end from oppgaver ";
$result = mysql_query($query);
$data = array();


while ($row = mysql_fetch_assoc($result)) {
        array_push($data, $row[0]);
        }

【问题讨论】:

标签: php sql arrays output


【解决方案1】:

使用$row 推入数组代替$row[0]

如下所示

while ($row = mysql_fetch_assoc($result)) {
        array_push($data, $row);
        }

【讨论】:

    猜你喜欢
    • 2011-09-25
    • 1970-01-01
    • 2011-02-08
    • 1970-01-01
    • 2011-08-09
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    • 1970-01-01
    相关资源
    最近更新 更多