0

PHPでダウンロード可能なcsvを作成しています。これは私がこれまでに持っているものです:

 // output headers so that the file is downloaded rather than displayed
 header('Content-Type: text/csv; charset=utf-8');
 header('Content-Disposition: attachment; filename=data.csv');

 // create a file pointer connected to the output stream
 $output = fopen('php://output', 'w');

 // output the column headings
 fputcsv($output, array('id', 'role_id', 'parent_id'));

 $list = RoleQuery::create()->find();
 $list = $list->toArray();

 $list = array_values($list);
 // loop over the rows, outputting them
 foreach($list as $fields){
     fputcsv($output, $fields);
 }

テストのために、データベースのロールを出力しています。問題は、それらがすべて次のように 1 つの列にあることです。

ここに画像の説明を入力

id、role_id、およびparent_idが異なる列にあることを確認するにはどうすればよいですか?

4

1 に答える 1

1

CSV データは正常に見えますが、CSV を開くために使用しているツールが区切り文字としてカンマを使用していないようです。davidkonrad が示唆したように、各値を引用符で囲み、それが役立つかどうかを確認できます。通常、Google Docs または Excel で CSV を開くと、どのように区切るかを尋ねられますが、通常はデフォルトでコンマが使用されます。

于 2013-10-23T13:37:22.607 に答える