SplFileObject::setCsvControl
(PHP 5 >= 5.2.0, PHP 7)
SplFileObject::setCsvControl — CSV の区切り文字、囲み文字、エスケープ文字をセットする
説明
public SplFileObject::setCsvControl
([ string $delimiter
= ","
[, string $enclosure
= "\""
[, string $escape
= "\\"
]]] ) : void
CSV フィールド処理用の区切り文字と囲み文字とエスケープ文字をセットします。
パラメータ
delimiter
- フィールドの区切り文字 (1 文字のみ)。
enclosure
- フィールドの囲み文字 (1 文字のみ)。
escape
- フィールドのエスケープ文字 (最大で1文字)。 空文字列(
""
)を指定すると、プロプライエタリなエスケープ機構が無効になります。
返り値
値を返しません。
変更履歴
バージョン | 説明 |
---|---|
7.4.0 | escape パラメータは空文字列を受け入れるようになりました。
この場合、プロプライエタリなエスケープ機構が無効になります。 |
例
例1 SplFileObject::setCsvControl() の例
<?php$file = new SplFileObject("data.csv");$file->setFlags(SplFileObject::READ_CSV);$file->setCsvControl('|');foreach ($file as $row) { list ($fruit, $quantity) = $row; // Do something with values}?>
data.csv の内容
<?php apples|20 bananas|14 cherries|87 ?>
参考
- SplFileObject::getCsvControl() - CSV の区切り、囲み文字、エスケープ文字を取得する
- SplFileObject::fgetcsv() - ファイルから行を取り出し CSV フィールドとして処理する