Comments (2)
@tiagof thanks for using the library. As explain in the documentation
Formatting happens AFTER combining the header and the fields value if a header is available and CSV value BUT BEFORE you can access the actual value.
Which means that at that point the header record is already calculated hence no formatting can be applied on it.
What you can/should do to workaround this expected behaviour is to change how your formatter is being added to the CSV document.
<?php
$csv = Reader::createFromPath('test.csv');
CharsetConverter::addTo($csv, 'ISO-8895-15'); //attach the CharsetConverter class as a stream filter
$csv
->skipEmptyRecords()
->setHeaderOffset(0);
foreach ($csv as $row) {
dump(array_keys($row), array_values($row));
}
In this example, the CharsetConverter
is used as a stream filter and stream filtering is applied before the CSV header is calculated which would result in ALL your CSV fields being converted.
Please refer to the documentation for further informations on the limitation of my proposal solution.
from csv.
@nyamsprod , many thanks! It works flawlessly!
Honestly, I did go through the documentation, but apparently not thoroughly enough.
Cheers!
from csv.
Related Issues (20)
- how to read csv without BOM? HOT 4
- getRecords from PART of columns and random sort HOT 2
- getRecords with defined header produce wrong results HOT 1
- Add object mapping HOT 12
- Enable protection against long lines HOT 6
- Preformatting data before conversion HOT 3
- TabularDataReader::getRecords()->current() can return NULL HOT 3
- php version is locked to 8.1, it causes issues with php upgrade to 8.2 or greater HOT 1
- Parsing CSV with escape character before enclosure HOT 2
- Feature request: Trim parsed csv strings HOT 2
- Since 9.12.0 TabularDataReader::getRecords is stricter - exception is thrown with string keys for header HOT 10
- Enclosure not works properly HOT 2
- Is there a simple way to format xls into csv before write/read on it
- Why does calling getContent() seem to empty the iterator returned by the Reader HOT 2
- Detect delimiter of file automatically HOT 1
- The method chunkBy is not yielding chunks correctly HOT 2
- getHeader implementation should match the documentation
- Better way to guess the delimiter HOT 1
- Handling escape parameter in PHP8.4+ HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from csv.