Php Symfony2将条令结果存储在csv文件中

Php Symfony2将条令结果存储在csv文件中,php,symfony,csv,doctrine-orm,Php,Symfony,Csv,Doctrine Orm,我正在使用Symfony2框架,我正在通过条令从数据库获取数据,现在我想将查询结果保存为CSV格式 我的条令查询结果数组结构: array('id' => '1', 'firstname' => 'Paul', 'surname' => 'White', 'email' => 'paul_white@gmail.com') 我的代码: public function dataToCSV($records) { $cavPath = 'Test\TestB

我正在使用Symfony2框架,我正在通过条令从数据库获取数据,现在我想将查询结果保存为CSV格式

我的条令查询结果数组结构:

array('id' => '1', 'firstname' => 'Paul', 'surname' => 'White', 'email' => 'paul_white@gmail.com')
我的代码:

    public function dataToCSV($records)
{
    $cavPath = 'Test\TestBundle\Resources\reports\test2.csv';
    $csvh = fopen($cavPath, 'w');

    foreach ($records as $record)
    {
        fputcsv($csvh, $record);
    }

    fclose($csvh);
}
$records参数获取查询结果

问题是我没有收到任何错误,但同时我无法看到csv文件存储在给定路径“Test\TestBundle\Resources\reports\test2.csv”中


也许有一个稳定的Symfony包可以为我完成所有这些…?

好吧,我的问题得到了答案,所以:

因为我使用的是unix系统(Mac os),所以我的斜杠是错误的,加上SYmfony2的默认目录是web,所以我必须返回一个目录

解决方案

..src/Test/TestBundle/Resources/reports/test2.csv

好吧,我的问题得到了答案,所以:

因为我使用的是unix系统(Mac os),所以我的斜杠是错误的,加上SYmfony2的默认目录是web,所以我必须返回一个目录

解决方案

..src/Test/TestBundle/Resources/reports/test2.csv

尝试使用
fflush($csvh)添加刷新
在fclose声明之前,好的管理csv的phplibrary是
goodby/csv
league/csv
@Matteo-thx,因为他们不可原谅地重播了第一个建议不起作用,我正在尝试goodby/csv库。嗨@Tomazi good choice我会说,重温一下:$cavPath='Test\TestBundle\Resources\reports\test2.csv';最好在内核路由或绝对路径中传递一个参数,并使用
fflush($csvh)添加刷新
在fclose声明之前,好的管理csv的phplibrary是
goodby/csv
league/csv
@Matteo-thx,因为他们不可原谅地重播了第一个建议不起作用,我正在尝试goodby/csv库。嗨@Tomazi good choice我会说,重温一下:$cavPath='Test\TestBundle\Resources\reports\test2.csv';最好使用内核路由或绝对路径传递参数