我使用此代码将查询提取到 csv 文件中,但它复制了打印的字段。
下面这段代码有问题吗?
if ( !$result1 ) { echo mysql_error(); }
while ($row = mysql_fetch_array($result1)) {
fputcsv($fh, $result1, ',');
}
fclose($fh);
这一切都发生在我插入,
fputcsv 之后
我使用此代码将查询提取到 csv 文件中,但它复制了打印的字段。
下面这段代码有问题吗?
if ( !$result1 ) { echo mysql_error(); }
while ($row = mysql_fetch_array($result1)) {
fputcsv($fh, $result1, ',');
}
fclose($fh);
这一切都发生在我插入,
fputcsv 之后
改变:
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);
fputcsv($fh, $result1, ',');
你不想要这个吗?
fputcsv($fh, $row, ',');