使用PHP fputcsv函数导出CSV文件的正确方法

时间:2015-06-06 12:14:48

标签: php excel csv fputcsv

我想要做的是,在不使用额外的第三方重型库的情况下导出Excel的一些数据集。

问题是,当我导出文件时,第一行看起来很好,但从第二行开始,它将所有$row数据放入当前行的第一个字段。

所以我得到第一行正确放置在右列并从第二行而不是列开始的文件我看到第一个字段中的全文由分隔符(逗号)分隔

enter image description here

以下是我用于结果的代码段。

        $counter=0;
        $file = fopen("sample.csv", "w");
        foreach ($registrants as $registrant) {
            $row = [
                'Fullname' => $registrant->fullname,
                'Phone' => $registrant->phone,
                'Email' => $registrant->email,
            ];
            if ($counter == 0)
                fputcsv($file, array_keys($row));
            fputcsv($file, $row);
            $counter++;
        }
        fclose($file);

也试过

         fputcsv($file, array_values($row), ';', ' ');

没有成功。我究竟做错了什么?无论OS或Excel语言环境等如何,在所有Excel版本上查看正确结果的正确方法是什么?

0 个答案:

没有答案