2

我使用此代码将查询提取到 csv 文件中,但它复制了打印的字段。

下面这段代码有问题吗?

if ( !$result1 ) { echo mysql_error(); }
while ($row = mysql_fetch_array($result1)) {
    fputcsv($fh, $result1, ',');
}
fclose($fh);

这一切都发生在我插入,fputcsv 之后

4

2 回答 2

2

改变:

fputcsv($fh, $result1, ',');

至:

fputcsv($fh, $row, ',');

更新:尽管您拒绝提供更多详细信息,但我猜测进行此更改后的问题是mysql_fetch_array默认情况下返回组合的数字索引/关联数组。你会想要通过MYSQL_NUM以获得你想要的结果。所以完整的代码是:

if (!$result1)
    echo mysql_error();

while ($row = mysql_fetch_array($result1, MYSQL_NUM)) /* <-- Added MYSQL_NUM */
    fputcsv($fh, $row, ','); /* <-- $row, not $result1 */

fclose($fh);
于 2012-06-22T17:25:08.887 回答
2
fputcsv($fh, $result1, ',');

你不想要这个吗?

fputcsv($fh, $row, ',');
于 2012-06-22T17:26:27.607 回答