Tripletail::Filter::CSV - CSV 出力フィルタ

TABLE OF CONTENTS


NAME

Tripletail::Filter::CSV - CSV 出力フィルタ


SYNOPSIS

  $TL->setContentFilter(
      'Tripletail::Filter::CSV',
      charset  => 'UTF-8',
      filename => 'foo.csv',
  );

  $TL->print('aaa,"b,b,b",ccc,ddd' . "\r\n");
  $TL->print(['aaa', 'b,b,b', 'ccc', 'ddd']);

DESCRIPTION

CSV の出力を支援する。

ファイル名の指定で Content-Disposition を出力可能。

また、このフィルタの使用時には、$TL->print に文字列の配列を渡す事も出来る。配列が渡された場合は、各要素を 必要に応じて "" で囲み、カンマで繋げ、改行コードを付けて出力する。

文字列を渡す場合は、改行コードは付与されないことに注意。

フィルタパラメータ

charset

出力文字コードを指定する。省略可能。

使用可能なコードは次の通り。 UTF-8,Shift_JIS,EUC-JP,ISO-2022-JP

デフォルトはShitf_JIS。

contenttype
  $TL->setContentFilter('Tripletail::Filter::CSV', contenttype => 'text/html; charset=sjis');

Content-Type を指定する。省略可能。

デフォルトはtext/csv; charset=(charasetで指定された文字コード)。

linebreak

配列が渡されたときに、どのような改行コードを利用するかを指定する。省略可能。

デフォルトは "\r\n"。

filename

ヘッダで出力するファイル名を指定する。省略可能。 指定した場合、次のようなヘッダが出力される。

  Content-Type: text/csv; charset=Shift_JIS; name="foo.csv"
  Content-Disposition: attachment; filename="foo.csv"

指定しない場合は、次のようなヘッダが出力される。

  Content-Type: text/csv; charset=Shift_JIS

METHODS

setHeader
  $filter->setHeader($key => $value)

他の出力の前に実行する必要がある。 同じヘッダを既に出力しようとしていれば、そのヘッダの代わりに指定したヘッダを出力する。(上書きされる)

addHeader
  $filter->addHeader($key => $value)

他の出力の前に実行する必要がある。 同じヘッダを既に出力しようとしていれば、そのヘッダに加えて指定したヘッダを出力する。(追加される)

flush

Tripletail::Filter参照

print

Tripletail::Filter参照

reset

Tripletail::Filter参照


SEE ALSO

Tripletail
Tripletail::Filter
Tripletail::Filter::TEXT

AUTHOR INFORMATION

Tripletail::Filter::CSV - CSV 出力フィルタ

INDEX

Tripletail::Filter::CSV - CSV 出力フィルタ