我正在使用odbc_exec来执行sql。它返回结果很好,但我想获得一个sql字段名称的数组。显然,我在SQL中使用它们,但我需要一种编程方式来快速从查询中返回它们
$sql = "SELECT mv_value, mv_entered_by, mv_student_id, mc_module_id, mc_type
FROM MarkbookValue t1
RIGHT JOIN MarkbookColumn t2 ON t1.mv_column_id = t2.mc_id
WHERE DateDiff(minute, mc_date_entered, '" . $date . "') = 0
AND mc_entered_by = '" . $name . "' ";
运行它:
$result = odbc_exec(CONN, $sql);
我想获得一个数组列表:
mv_value, mv_entered_by, mv_student_id, mc_module_id, mc_type
所以我可以输出带标题的CSV
答案 0 :(得分:0)
这看起来像是一个黑客,有更优雅的解决方案吗?
$result = odbc_exec($server, $sql);
$fp = fopen($name, 'w');
while ($export = odbc_fetch_array($result)) {
if (!isset($headings))
{
$headings = array_keys($export);
fputcsv($fp, $headings, ',', '"');
}
fputcsv($fp, $export, ',', '"');
}
fclose($fp);