在csv php中添加用于输出的mysql列?

Posted

技术标签:

【中文标题】在csv php中添加用于输出的mysql列?【英文标题】:adding mysql columns for ouput in csv php? 【发布时间】:2012-10-02 00:21:25 【问题描述】:

我正在尝试将表数据从 mysql 添加到 csv 并使用 php 将它们输出到浏览器。

PHP:

$rows = $t->db->query("SELECT * from Animals");
$output = fopen('php://output', 'w');
fputcsv($output, array('Column 1', 'Column 2', 'Column 3'));
while ($row = $rows->result_array()) fputcsv($output, $row);

但我收到错误:

消息:数组到字符串的转换

在while循环所在的那一行,我似乎看不出问题出在哪里。

谢谢

【问题讨论】:

你试过检查$rows->result_array()返回什么? $t->db->query 中的 $t 是什么?不应该是 $this 吗? print_r( $row)的结果放到循环里面。 【参考方案1】:

result_array()返回所有结果,是数组的数组。

改变

while ($row = $rows->result_array()) fputcsv($output, $row);

foreach ($rows->result_array() as $row) 
  fputcsv($output, $row);

【讨论】:

以上是关于在csv php中添加用于输出的mysql列?的主要内容,如果未能解决你的问题,请参考以下文章

php读取mysql数据后如何自动添加一个序号列?

如何从.csv文件向JTable中的列添加标头

从 .csv 文件中删除一些行会导致向其中添加 NaN 列

从Finish TIME值中减去Start TIME值,并在Unix文件中将值作为新列添加到CSV文件中

分隔特定列并将它们添加为 CSV 中的列(Python3、CSV)

在 csv 文件中添加具有相同关键特征的列