将PHP导出到Excel,并使用分列

4

我正在尝试将我的数据库导出为 .csv 文件,导出已完成,但它将所有字段放在一个列中(没有分隔符)

代码:

$sql = "SELECT ARP_name ,Student_name   ,institute  ,id ,Major from       istyle ";
$results=mysql_query($sql);
$filename = "uploaded/".time().".csv";

$handle = fopen($filename, 'w+');

fputcsv($handle, array_keys("ARP_name","Student_name","institute"));

while($row = mysql_fetch_assoc($results))
{
    fputcsv($handle, array($row["ARP_name"], $row["Student_name"],$row["institute"]));
}

结果为:

enter image description here

2个回答

1

从您的CSV导出文件看起来完全正常,我猜您的意思是您尝试导入数据的电子表格将所有内容放在一个单独的列中?

当将数据导入电子表格应用程序时,有各种设置可以调整以描述CSV格式细节。请检查应用程序首选项对话框。OpenOffice和LibreOffice Calc应用程序都配备了一个很棒的向导。


是的,它将它们放在一列中。我的意思是ARP名称在一列中,ID在另一列中等等。 - Norah
1
那么,当您按照建议调整导入参数时,您得到了什么改进?我猜表格使用分号(;)作为默认分隔符,而不是逗号(,)。 - arkascha
抱歉,我不理解。你的意思是你解决了这个问题? - arkascha
不,我没有。 当我把分号;放在逗号,的位置时,就会出现以下错误: PHP解析错误:语法错误,意外的';'。 - Norah
为什么会出现 PHP 错误?我以为我们在谈论将文件导入电子表格。这与 PHP 没有任何关系...你在哪里进行了那个调整? - arkascha
显示剩余2条评论

0

如果要分隔列,请使用“\t”,如果要分隔行,请使用“\n”


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接