simplicity-ag / cao-csv-output
Zend Framework 2 Module for generating CSV output from an array.
Requires
- php: >=5.3.3
- zendframework/zendframework: 2.*
This package is not auto-updated.
Last update: 2025-05-05 17:13:44 UTC
README
Zend Framework 2 Module for generating CSV output from an array.
This module provides both a Model and View Helper with which you can use to output
the csv data. When using the view helper, the output will automatically be passed
throught the escapeHtml view helper and all new lines will be converted to <br>
.
Installation
Main Setup
By cloning project
- Install the CaoCsvOutput ZF2 module
by cloning it into
./vendor/
. - Clone this project into your
./vendor/
directory.
With composer
-
Add this project in your composer.json:
"require": { "chrisoconnell/cao-csv-output": "dev-master" }
-
Now tell composer to download CaoCsvOutput by running the command:
$ php composer.phar update
Post installation
-
Enabling it in your
application.config.php
file.<?php return array( 'modules' => array( // ... 'CaoCsvOutput', ), // ... );
Usage
You can either create an instance of CaoCsvOutput\Model\Csv
or use the view helper
csvOutput
.
Example of Instance
-
Define the data as an array.
-
Create a new instance of
CaoCsvOutput\Model\Csv
using$data
as the input. -
Output the result using the
render
method.$data = array( array('a', 1, 'a + b'), array('b', '"', ';'), ); $csv = new CaoCsvOutput\Model\Csv($data); $output = $csv->render();
-
Which will set
$output
to bea;1;"a + b" b;"""";";"
View Helper Example
-
Define the data like before.
-
From within your view script (.phtml file) simply call the view helper.
echo $this->csvOutput($data);
Input Parameters
You can easily change the characters used for the CSV output by setting the attributes parameters when calling either the View Helper or the Model class.
- Data
- (array) Input array which gets converted to CSV output
- Delimiter
- (string) Character separating the fields of the CSV output. Default is
;
- Enclosure
- (string) Character that surounds the field text. Default is
"
- Enclose All
- (bool) If every field should be enclosed by the Enclosure string or not.
Defalut isfalse
. By default, only fields which contain a space, the delimiter, or the enclosure will be enclosed by the enclosure character.
Example
echo $this->csvOutput($data, ',', "'", true);
If using the input from above, the output would be
'a','1','a + b'
'b','"',';'