0

所以我正在尝试制作一个 .csv 文件,之后我会下载它,但问题是行没有正确排列。我正在使用 fputcsv。

$tot.="$codcomanda,$clientnume,$brandnume,$numeprod,$um,$cantitate,$updatare";
$list =array(
    array('Comanda','Client','Categorie','Produs','UM','Cantitate','Actualizare'),
    array($tot),
);

$fp = fopen('file.csv', 'w');

foreach ($list as $fields) {
    fputcsv($fp, $fields);
}

fclose($fp);

变量 $tot 来自一个while语句,它从不同的查询中获取它的变量,我在互联网上找不到满足我需要的 php 代码。我尝试了几种方法来尝试让它工作但没有。我尝试了$tot不同的方法,但没有任何工作,要么 $tot.= csv 文件应该有类似的东西。

  • 标题行,
  • 1号线,
  • 2号线,
  • ETC

但我的 csv 显示像

  • 标题行,
  • “线路 1、线路 2 等”

我尝试了$tot不同的方法,但没有任何工作,要么像这样的 csv 显示,要么根本不显示任何内容。


已解决:使用 fwrite 我已经解决了。

$tot.="$codcomanda;$clientnume;$brandnume;$numeprod;$um;$cantitate;$updatare;\n";
$tot2="Comanda;Client;Brand;Produse;U.M;Cantitate;Actualizare;\n$tot";

    $file = fopen("file.csv","w");
    fwrite($file,$tot2);
    fclose($file);

它像它应该写的那样写。

4

2 回答 2

1

Try like the following example

     <?php
          $list =array(
                       array('Comanda','Client','Categorie','Produs','UM','Cantitate','Actualizare'),
           array('P1','C1','CL1','2','2','Ct1','A1'),
           array('P2','C2','CL2','2','2','Ct2','A2'),
          );

       $fp = fopen('file.csv', 'w');

     foreach ($list as $fields) {
     fputcsv($fp, $fields);
    }

     fclose($fp)
   ?>
于 2013-02-26T12:27:59.297 回答
0

尝试在调用 fopen() 之前添加此行:ini_set("auto_detect_line_endings", true)

于 2013-02-21T15:52:46.977 回答