maatwebsite / excel使用块导入似乎不起作用 - Laravel 5.4

时间:2017-12-04 22:53:46

标签: excel laravel phpexcel

我按照文档和队列执行正常,但是第一个之后的数据没有存储到数据库中(对于代码示例,我正在编写单独的文件)。请参考下面的代码。

包版本:2.1.0 Laravel版本:5.4.36

Excel::filter('chunk')->load(storage_path('users.csv'))->
chunk(250,function($results){
       $row_set = $results->toArray();
       foreach ($row_set as $key => $row) {
           Storage::disk('local')->put(rand(10, 100).'_users.txt', json_encode($row));
       }
});

配置: php.ini - > auto_detect_line_endings:true export.php force_sheets_collection:true, QUEUE_DRIVER =数据库

请帮我解决此问题,我花了大约2天的时间在不同的错误报告和解决方案中找到解决方案。

1 个答案:

答案 0 :(得分:0)

您应该将$ results设置为函数,还需要确保在foreach循环中放置Log :: debug()消息

Excel::filter('chunk')->load(storage_path('users.csv'))->
chunk(250,function($results){
       foreach ($results as $key => $row) {
           Storage::disk('local')->put(rand(10, 100).'_users.txt', json_encode($row));
       }
});