0

サイトのベンダー サイトにエクスポートする動的 csv ファイルを作成しようとしています。彼らは、すべての値を二重引用符で囲みたいと考えています。行を作成して fputcsv() にフィードしようとしていますが、notepad2 で表示すると大量の二重引用符が表示され、Excel で表示すると 1 つのエントリとして表示されます。ここに私の価値があります:

$line = '"'.$row->petID.'","'.$row->customID.'","'.$row->petName.'","'.trim($row->breedName1).'","'.trim($row->breedName2).'","'.$df->setGender($row->gender).'","'.$df->setSize($row->size).'","'.$df->setAge($row->age).'","'.$description.'","'.$row->pType.'","'.$df->setStatus($row->status).'","","'.$row->isAltered.'","'.$ND.'","'.$NC.'","'.$NK.'","'.$df->isHousetrained($row->housebroken).'","'.$df->isDeclawed($row->declaw).'","'.$df->isSpecialNeeds($row->isSpecial).'","'.$df->isMix($row->breed2).'","'.$PhotoURL1.'","'.$PhotoURL2.'","'.$PhotoURL3.'"';

テキスト エディタを使用すると、次のようになります。 "",""ベイビー"",""ジャックとホセは、野良犬として避難所に連れてこられた 7 ポンドのかわいいチワワとポメラニアンのミックス犬に生まれました。 、子犬はおそらく小さいままです.ジャックまたはホセのオンライン養子縁組アプリケーションについては、www.dogswithoutborders.orgのウェブサイトにアクセスして、養子縁組フェアの詳細を確認してください. ","""",""0"","""","""","""","""","""","""","1"","" http://photos.petfinder.com/photos/US/CA/CA1087/20460152/CA1087. 20460152-1-x.jpg "","""","""""

手動で追加した "(s) を削除すると、最初と最後に 1 つしか表示されません。何かアイデアはありますか?

4

2 に答える 2

5

組み込みの CSV 機能を使用してください。

<?php
    $fp = fopen('file.csv', 'w');
    fputcsv($fp, array('item1','items'));
    fclose($fp);
?>

参照

于 2013-02-16T20:54:18.130 に答える
-1

自分で行う代わりに、次の PHP 関数を使用できます。

fputcsv

ドキュメントはこちら: http://php.net/manual/en/function.fputcsv.php

ドキュメントのように、次のことができます...

//put your data in an array like this:
$list = array (
    array('aaa', 'bbb', 'ccc', 'dddd'),
    array('123', '456', '789'),
    array('"aaa"', '"bbb"')
);
//open the output file for writing
$fp = fopen('file.csv', 'w');

//write to the csv file (comma separated, double quote enclosed)
foreach ($list as $fields) {
    fputcsv($fp, $fields,',','"');
}
//close the file
fclose($fp);
于 2013-02-16T20:52:54.040 に答える