0
바닐라 PHP에서
John,Paul,George,Ringo
는,이 코드는 문제없이 작동은 (CSV 파일에 스크립트와 같은 위치) :
$data = 'beatles.csv';
$file = new SplFileObject($data);
$file->setFlags(SplFileObject::READ_CSV);
foreach ($file as $row) {
echo $row[0].'<br>'; // outputs John
}
는 Laravel 5.4에서, 나는 app
폴더 아래에 MyDomainName
라는 이름의 폴더를 생성하고 나는 그것의 네임 스페이스 있도록 다음과 같이 CSV가 파일을 넣어 :
use App\MyDomainName;
그리고 CSV 데이터를 페치 컨트롤러 내 방법의 내용는 다음과 같다 :
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\MyDomainName;
class PageController extends Controller
{
public function fetchCSV()
{
$file = new SplFileObject('beatles.csv');
$file->setFlags(SplFileObject::READ_CSV);
foreach ($file as $row){
dd($row[0]);
}
}
}
그리고 나는이 문제를 얻을 :
FatalThrowableError in PageController.php line 67: Class 'App\Http\Controllers\SplFileObject' not found
내가 사용한다는 생각을 use App\MyDomainName;
문제를 해결할 수 있지만 여전히 해결되지 않았습니다.
명시 적으로 전체 경로를 사용했지만 여전히 작동하지 않았습니다.
$file = new \App\MyDomainName\SplFileObject('App\MyDomainName\beatles.csv');
난 여전히 같은 오류 얻을 :
FatalThrowableError in PageController.php line 67:
Class 'App\MyDomainName\SplFileObject' not found
그것이 SplFileObject
클래스를 찾을 수없는 것이 왜 문제가 될 수 무엇을?
의 네임! 네임 스페이스! 네임 스페이스! 'SplFileObject'는 __global__ 네임 스페이스에 있습니다; 그래서'$ file = new \ SplFileObject ('beatles.csv');와'$ file-> setFlags (\ SplFileObject :: READ_CSV); ' –
나는 또한 http://csv.thephpleague.com을 보길 권한다. / – fubar