ファイルシステム 関数
PHP Manual

fputcsv

(PHP 5 >= 5.1.0, PHP 7)

fputcsv行を CSV 形式にフォーマットし、ファイルポインタに書き込む

説明

int fputcsv ( resource $handle , array $fields [, string $delimiter = "," [, string $enclosure = '"' [, string $escape_char = "\\" ]]] )

fputcsv() は、行(fields 配列として渡されたもの)を CSV としてフォーマットし、それを handle で指定したファイルに書き込みます (いちばん最後に改行を追加します)。

パラメータ

handle

ファイルポインタは、有効なファイルポインタである必要があり、 fopen() または fsockopen() で正常にオープンされた (そしてまだ fclose() でクローズされていない) ファイルを指している必要があります。

fields

値の配列。

delimiter

オプションの delimiter はフィールド区切り文字 (一文字だけ) を指定します。

enclosure

オプションの enclosure はフィールドを囲む文字 (一文字だけ) を指定します。

escape_char

オプションの escape_char は、エスケープ文字 (一文字だけ) を指定します。

注意:

If an enclosure character is contained in a field, it will be escaped by doubling it, unless it is immediately preceded by an escape_char.

返り値

書き込んだ文字列の長さを返します。失敗した場合に FALSE を返します。

変更履歴

バージョン 説明
5.5.4 escape_char パラメータが追加されました。

例1 fputcsv() の例

<?php

$list 
= array (
    array(
'aaa''bbb''ccc''dddd'),
    array(
'123''456''789'),
    array(
'"aaa"''"bbb"')
);

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

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

fclose($fp);
?>

上の例が書き出す file.csv の内容は、このようになります。

aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""

注意

注意: マッキントッシュコンピュータ上で作成されたファイルを読み込む際に、 PHP が行末を認識できないという問題が発生した場合、 実行時の設定オプションauto_detect_line_endings を有効にする必要が生じるかもしれません。

参考


ファイルシステム 関数
PHP Manual

プラスアルファレンタルサーバー