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行目、

しかし、私の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

次の例のようにしてみてください

     <?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 に答える