Zend Framework 3 module to export and import CSV files
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config
docs
src/RdnCsv
tests
.gitignore
.travis.yml
LICENSE
Module.php
README.md
composer.json
phpunit.xml

README.md

RdnCsv

The RdnCsv ZF2 and ZF3 module makes it really easy to export and import CSV files.

How to install

  1. Use composer to require the radnan/rdn-csv package:

    $ composer require radnan/rdn-csv:2.*
  2. Activate the module by including it in your application.config.php file:

    <?php
    
    return array(
        'modules' => array(
            'RdnCsv',
            // ...
        ),
    );

How to use

The module comes with two plugins - CsvExport() and CsvImport().

CsvExport()

Export data into a downloadable CSV file using this plugin.

// inside a controller action

$header = array(
	'Year',
	'Make',
	'Model',
	'Description',
	'Price',
);
$records = array(
	array(
		'1997',
		'Ford',
		'E350',
		'ac, abs, moon',
		'3000.00',
	),
);

return $this->CsvExport('foo.csv', $header, $records);

The plugin will return a response object which you can then return from your controller action.

Read more documentation on CsvExport()

CsvImport()

Import data from a CSV file using this plugin.

// inside a controller action

$csv = $this->CsvImport('/path/to/foo.csv');

foreach ($csv as $row)
{
	var_dump($row);
	// array(
	//     'Year' => '1997',
	//     'Make' => 'Ford',
	//     'Model' => 'E350',
	//     'Description' => 'ac, abs, moon',
	//     'Price' => '3000.00',
	// )
}

The plugin returns an iterator that can be used to loop over all the rows in the CSV file.

Read more documentation on CsvImport()