CSV Library
Simple Example
The CSV library is built to take in rows of data as either associative arrays or as objects and either save the data as a file or return it as a string. Each row of data is added one at a time, but you can provide any combination of associaitve arrays and objects and they can have differing keys and property names:
$csv = ee('CSV');
$csv->addRow(array(
'email' => 'team at example dot com',
'title' => 'Example Team'
))->addRow(array(
'email' => 'hello at example dot com',
'name' => 'Hello to Example'
));
echo (string) $csv;
Would result in:
"email", "title", "name"
"team at example dot com", "Example Team", ""
"hello at example dot com", "", "Hello to Example"
Alternatively you could save the resulting data to a file:
$csv->save('/path/to/file.csv');
Methods
class ExpressionEngine\Library\Data\CSV
addRow($rowData)
Add a row of data to the CSV instance.
Parameter | Type | Description |
---|---|---|
$rowData | Array/object |
A single row of data passed in as an object or as an associaitve array |
Returns | Object |
$this , the CSV object itself so you can chain ->addRow() and |
$csv->addRow(array(
'email' => 'team at example dot com',
'title' => 'Example Team'
));
// OR
$row = new \stdClass();
$row->email = 'team at example dot com';
$row->name = 'Example Team';
$result = $csv->addRow($row);
save($filename)
Save the csv data to a file.
Parameter | Type | Description |
---|---|---|
$filename | String |
The path to the file |
Returns | Boolean |
TRUE if the file was saved, FALSE if there was a failure |
$csv->save('/path/to/file.csv');
__toString()
String representation of the csv data.
Parameter | Type | Description |
---|---|---|
Returns | String |
String representation of the csv data |
echo (string) $csv;