A simple PHP library to parse and generate CSV files.
Go to file
Simon Vieille 33e15895d3
CI
2018-06-06 18:59:00 +02:00
src/Deblan/Csv Cleaning code 2017-03-12 18:58:44 +01:00
tests Cleaning code 2017-03-12 18:58:44 +01:00
.gitignore Insight analyse fixes 2017-03-13 13:37:18 +01:00
.php-censor.yml CI 2018-06-06 18:59:00 +02:00
LICENSE Insight analyse fixes 2017-03-13 13:37:18 +01:00
README.md CI 2018-06-06 18:59:00 +02:00
composer.json composer 2016-04-04 09:56:00 +02:00
phpunit.xml CI 2018-06-06 15:51:31 +02:00

README.md

CSV parser/generator

A simple PHP library to parse and generate CSV files.

Composer installation

$ composer require deblan/csv "~2"

Or in your composer.json:

{
    "require": {
        "deblan/csv": "~2"
    }
}

Usages

Generator

use Deblan\Csv\Csv;

$csv = new Csv();

// Defines the delimiter (default is ;)
$csv->setDelimiter(";");

// Defines the enclosure (default is ")
$csv->setEnclosure('"');

// Defines the end of line (default is \n)
$csv->setEndOfLine("\n");

// Defines the charset (default is UTF-8)
$csv->setCharset("UTF-8");

// Add a new line at the end
$csv->addData(['Foo', '$1000'));

// Add a new line at the end
$csv->appendData(['Bar', '$600']);

// Add a new line at the beginning
$csv->prependData(['Boo', '$3000']);

// Defines all the datas
$csv->setDatas([[...], [...]]);

// Defines the header
$csv->setHeaders(['Product', 'Price']);

// Rendering
$result = $csv->render();

// Rendering to a file
$result = $csv->render('products.csv');

// Appending to a file
$result = $csv->render('products.csv', FILE_APPEND);

Parser

use Deblan\Csv\CsvParser;

$csv = new CsvParser();

// Defines the delimiter (default is ;)
$csv->setDelimiter(";");

// Defines the enclosure (default is ")
$csv->setEnclosure('"');

// Defines the end of line (default is \n)
$csv->setEndOfLine("\n");

// Headers?
$csv->setHasHeaders(true);

// Parse a file
$csv->parseFile('products.csv');

// Parse a string
$csv->parseString($myString);

// Headers and datas
$headers = $csv->getHeaders();
$products = $csv->getDatas();