Laravel 5 Class 'App\Http\Controllers\File' 未找到

Laravel 5 Class 'App\Http\Controllers\File' not found

我收到以下错误:

Class 'App\Http\Controllers\File' not found

在 laravel 5 控制器中使用时:

$files = File::files( $this->csvDir );

我必须将 Filesystem 添加到 composer.jsonconfig/app.php。我以某种方式使用了错误配置。

这就是我更改的内容:

composer.json

    "require": {
        "laravel/framework": "5.0.*", 
        "illuminate/html": "5.*",
        "illuminate/filesystem": "5.*"  /* my try to repo */
    },

config/app.php

    'providers' => [

    // [...] 
    // jerik 2015-04-17: get html Forms
    // http://laravel.io/forum/09-20-2014-html-form-class-not-found-in-laravel-5
    'Illuminate\Html\HtmlServiceProvider', 
    'Illuminate\Filesystem\FilesystemServiceProvider', // try to add file

当我运行composer update时,它运行很好,但是没有文件系统被下载的输出。所以我的配置是错误的,但我不知道正确的方法。

有什么建议或提示吗?

首先你应该考虑使用内置的 Storage facade。你不需要手动包含 Filesystem 除非你使用 S3 或 Rackspace 因为它已经默认包含 - 查看 Filesystem in Laravel 5 documentation.

看来,你应该导入 File 所以试试

use File;

\File 来解决问题,因为现在您正在使用当前命名空间中的文件,并且可能 File 未在 App\Http\Controllers 命名空间

中定义