我有不同表的myssql数据库。表之间的数据已链接,我使用userid检索并显示它们。我使用了PHP MYSQLi的引用显示数据库中的所有表
但是,如何将这些信息导出为csv文件?我试过而不是用echo将其更改为字符串,然后将字符串打印到csv文件中,但无法正常工作。
我也尝试过以下示例:http : //sudobash.net/php-export-mysql-query-to-csv-file/
但是我可以看到数据,但是在"<font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>" csv文件中的顶部也有垃圾(例如etc)。
"<font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>"
还有另一种方法吗?
如果要将每个MySQL行写入一个CSV文件,则可以使用内置的PHP5函数 fputcsv
fputcsv
$result = mysqli_query($con, 'SELECT * FROM table'); $row = mysqli_fetch_array($result, MYSQLI_ASSOC); $fp = fopen('file.csv', 'w'); foreach ($row as $val) { fputcsv($fp, $val); } fclose($fp);
对于写入的每一行,该行应返回以逗号分隔的字符串file.csv:
file.csv
row1 val1, row1 val2 row2 val1, row2 val2 etc..
另外,请确保检查要写入的目录的权限。