/league-csv

CSV data manipulation made easy in PHP

Primary LanguagePHPMIT LicenseMIT

CSV

Latest Version Software License Build Total Downloads

Csv is a library to ease parsing, writing and filtering CSV in PHP. The library goal is to be powerful while remaining lightweight, by utilizing PHP native classes whenever possible.

Highlights

  • Easy to use API
  • Read and Write to CSV documents in a memory efficient and scalable way
  • Support PHP stream filtering capabilities
  • Transform CSV documents into popular format (JSON, XML or HTML)
  • Fully documented
  • Fully unit tested
  • Framework-agnostic

Documentation

Full documentation can be found at csv.thephpleague.com.

System Requirements

You need the mbstring extension to use Csv and the latest stable version of PHP is recommended.

Please find below the PHP support for Csv version 9.

Min. Library Version Min. PHP Version Max. Supported PHP Version
9.0.0 PHP 7.0.10 PHP 7.1.x
9.1.2 PHP 7.0.10 PHP 7.2.x
9.2.0 PHP 7.0.10 PHP 7.4.x
9.6.0 PHP 7.2.5 PHP 7.4.x
9.6.2 PHP 7.2.5 PHP 8.0.x
9.7.0 PHP 7.3.0 PHP 8.0.x
9.7.3 PHP 7.3.0 PHP 8.1.x
9.8.0 PHP 7.4.0 PHP 8.1.x
9.9.0 PHP 8.1.2 PHP 8.x

Install

Install Csv using Composer.

composer require league/csv:^9.0

Configuration

Warning: If your CSV document was created or is read on a Legacy Macintosh computer, add the following lines before using the library to help PHP detect line ending.

if (!ini_get('auto_detect_line_endings')) {
    ini_set('auto_detect_line_endings', '1');
}

The ini setting is deprecated since PHP version 8.1 and will be removed in PHP 9.0

Testing

The library has:

  • a PHPUnit test suite.
  • a coding style compliance test suite using PHP CS Fixer.
  • a code analysis compliance test suite using PHPStan.

To run the tests, run the following command from the project folder.

composer test

Contributing

Contributions are welcome and will be fully credited. Please see CONTRIBUTING and CONDUCT for details.

Security

If you discover any security related issues, please email nyamsprod@gmail.com instead of using the issue tracker.

Changelog

Please see CHANGELOG for more information on what has changed recently.

Credits

License

The MIT License (MIT). Please see LICENSE for more information.