|
6 months ago | |
---|---|---|
src/Deblan/Csv | 1 year ago | |
tests | 1 year ago | |
.gitignore | 4 years ago | |
.php-censor.yml | 2 years ago | |
Jenkinsfile | 6 months ago | |
LICENSE | 4 years ago | |
README.md | 6 months ago | |
composer.json | 4 years ago | |
phpunit.xml | 1 year ago |
A simple PHP library to:
PHP >= 7.1 required.
$ composer require deblan/csv "~3"
Or in your composer.json:
{
"require": {
"deblan/csv": "~3"
}
}
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);
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();
use Deblan\Csv\CsvStreamParser;
// CsvStreamParser is a CsvParser
$csv = new CsvStreamParser();
// Parse a stream
$csv->parseStream(fopen('products.csv', 'r'));
while ($data = $csv->getData()) {
// ...
}