sql结果为数组数组

时间:2013-08-23 07:06:21

标签: php sql arrays output

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

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

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

在gannti类示例中显示的原始数组是这样写的:

$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]);
        }

1 个答案:

答案 0 :(得分:0)

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

如下所示

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