在laravel 5中使用非laravel package league / csv

时间:2018-04-12 09:07:12

标签: laravel csv laravel-5 composer-php laravel-5.4

我正试图在laravel 5中使用composer package league / csv。

在我的控制器中有以下用法声明:

use League\Csv\Reader;

然后有以下功能:

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 League\Csv\AbstractCsv::__construct() from context 'App\Http\Controllers\MyController'

1 个答案:

答案 0 :(得分:2)

documentation看起来需要做与此类似的事情

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

你不能instantiate the Reader通过构造函数,因为它是protected method