CSV

CSV形式のデータを作成する方法はどういう方法がメジャーなんだろうか?

私がよく用いる方法

配列にデータを追加していき最後にその配列をjoinする。

<?php
$csv_array = array();
$items     = array('foo', 'bar', 'baz'); // コレを直接 implode() したら
                                         // 説明にならないので、別の配列に詰め替える
foreach ($items as $item) {
    $csv_array[] = $item;
}
echo implode(',', $csv_array), "\n";
他の人が使っている方法でよく見る方法1

一番目の要素かそうでないかで、カンマを付ける付けないを判定する方法。if文があるので余り好きじゃない。

<?php
$csv   = '';
$items = array('foo', 'bar', 'baz');
foreach ($items as $item) {
    if (empty($csv)) {
        $csv = $item;
    } else {
        $csv .= ',' . $item;
    }
}
echo $csv, "\n";
他の人が使っている方法でよく見る方法2

あとで余分なカンマを削除する方法。よけいなデータを追加しているのが余り好きじゃない。

<?php
$csv   = '';
$items = array('foo', 'bar', 'baz');
foreach ($items as $item) {
  $csv .= ',' . $item;
}
$csv = substr($csv, 1);
echo $csv, "\n";