我正试图在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'
答案 0 :(得分:2)
从documentation看起来需要做与此类似的事情
$csv = Reader::createFromPath($request->csv->path(), 'r');
你不能instantiate the Reader通过构造函数,因为它是protected
method。