在从4.2.23结账时从laravel 4.2升级到5.1.11之后的ReflectionException

时间:2016-03-28 20:49:04

标签: php laravel

ReflectionException in Route.php line 264: Class App\Http\Controllers \HomeController does not exist

routes.php文件

Route::get('/', array(
  'as' => 'home',
  'uses' => 'HomeController@index',
));`

有趣的是,如果我在下面声明url,则此错误消失

Route::get('/', function(){
  $obj = new HomeController();
  return $obj->index();
});

2 个答案:

答案 0 :(得分:0)

使用命令行创建控制器文件:

php artisan make:controller HomeController

打开控制器文件并检查命名空间是否正确。

在路线中:

Route::get('/','HomeController@index');

这将重定向到'索引'功能内部' HomeController'。

答案 1 :(得分:0)

听起来你有命名空间问题。

要开始使用,只需将$ namespace设置为:

protected $namespace = 'App\Http\Controllers'; 

然后:

  1. 确保HomeController目录中的App\Http\Controllers
  2. HomeController从以下内容开始:
  3. namespace App\Http\Controllers;
    
    use Illuminate\Http\Request;
    use Illuminate\Routing\Controller;
    
    class HomeController extends Controller
    {