Giter VIP home page Giter VIP logo

Comments (5)

nyamsprod avatar nyamsprod commented on May 13, 2024

Ok as per the documentation there are several ways to instantiate the object I think you've just combined many of them. The problem may be related to that. I would suggest, simplify your code like below:

$filepath = '/path/to/my/csv/file.csv';
$csv = League\Csv\Writer::createFromPath($filepath, 'w');
$csv->insertAll($csv_data);

Nothing more... it will work and the empty line should disappear. You do not need to use fopen first. by using the w open mode the library will try to open or create the file if it does not succeed a RuntimeException will be thrown.

from csv.

garethellis36 avatar garethellis36 commented on May 13, 2024

Thanks for your response. I was trying something similar but the missing piece was the "w" in the second argument to create the file.

Anyway, it's still putting an empty line at the end of the CSV file.

Code is now:

$csv = League\Csv\Writer::createFromPath($filepath, "w");
$csv->insertAll($csv_data);

from csv.

nyamsprod avatar nyamsprod commented on May 13, 2024

The end line is put because of SplFileObject::fputcsv as per documentation:

fputcsv() formats a line (passed as a fields array) as CSV and write it (terminated by a newline) to the specified file handle.

from csv.

garethellis36 avatar garethellis36 commented on May 13, 2024

Is it worth doing a PR to have an option which doesn't include the newline?

from csv.

nyamsprod avatar nyamsprod commented on May 13, 2024

No need to PR this, there's a quick workaround for that:

function outputWithoutEndingEOL(League\Csv\AbstractCSV $csv)
{
    return  rtrim($csv->newReader());
}

from csv.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.