diff options
author | ignace nyamagana butera <nyamsprod@gmail.com> | 2016-07-22 08:48:11 +0200 |
---|---|---|
committer | ignace nyamagana butera <nyamsprod@gmail.com> | 2016-07-25 08:51:46 +0200 |
commit | 8a20c56144effa552a8cba5d8c626063222975b7 (patch) | |
tree | fe82caaf2246086e0d491c50ed6daf9680235637 /src | |
parent | 2ec6db1e8c24c8d87e76d8380f5832303a0eae0c (diff) | |
download | csv-8a20c56144effa552a8cba5d8c626063222975b7.zip csv-8a20c56144effa552a8cba5d8c626063222975b7.tar.gz csv-8a20c56144effa552a8cba5d8c626063222975b7.tar.bz2 |
bug fix preserve fileObject CSV controls
When using AbstractCsv::createFromFileObject
the CSV object inherit the SplFileObject csv controls
A php bug was filled because SplFileObject::getCsvControl did not
return the escape caracter (see: https://bugs.php.net/bug.php?id=72646)
The bug is resolved so the patch can be completely applied and the testsuite
is updated accordingly
Diffstat (limited to 'src')
-rw-r--r-- | src/AbstractCsv.php | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/AbstractCsv.php b/src/AbstractCsv.php index df36c22..5bbba19 100644 --- a/src/AbstractCsv.php +++ b/src/AbstractCsv.php @@ -115,7 +115,15 @@ abstract class AbstractCsv implements JsonSerializable, IteratorAggregate */ public static function createFromFileObject(SplFileObject $file) { - return new static($file); + $csv = new static($file); + $controls = $file->getCsvControl(); + $csv->setDelimiter($controls[0]); + $csv->setEnclosure($controls[1]); + if (isset($controls[2])) { + $csv->setEscape($controls[2]); + } + + return $csv; } /** |