在 laravel 5 中使用非 laravel 包联盟/csv



我正在尝试在 laravel 5 中使用作曲家包 league/csv。

在我的控制器中,有以下 use 语句:

use LeagueCsvReader;

然后有以下函数:

public function import (Request $request)
{
    if ($request->isMethod('post'))
    {
        $validatedData = $request->validate([
            'csv' => 'required|mimetypes:text/comma-separated-values,text/plain|mimes:csv,txt',
        ]);
        if ($request->file('csv') && $request->file('csv')->isValid())
        {
            $file = $request->csv->path();
            $csv = new Reader($file);
            echo'<pre>';var_dump($csv);exit;
        }
    }
}

阅读器已加载,但我收到以下错误消息:

Call to protected LeagueCsvAbstractCsv::__construct() from context 'AppHttpControllersMyController'

从文档中看起来您需要执行与此类似的事情

$csv = Reader::createFromPath($request->csv->path(), 'r');

不能通过构造函数实例化读取器,因为它是一个protected方法。

相关内容

  • 没有找到相关文章

最新更新