在laravel 5中找不到类控制器

gos*_*ide 2 php laravel laravel-routing laravel-5

所以我是laravel的新手,只是尝试了一些代码来清除基础知识,但是在创建一个新的控制器来处理一个路由之后.它抛出一个致命的异常,说没有找到类'控制器'!

(controller.php存在于同一目录中)

controller.php代码是默认代码

<?php

namespace App\Http\Controllers;

use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;

abstract class Controller extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
}
Run Code Online (Sandbox Code Playgroud)

这是我的PagesController.php代码

<?php

class PagesController extends Controller
{
    public function home()
    {
        $name = 'Yeah!';
        return View::make('welcome')->with('name',$name);
    }
}
Run Code Online (Sandbox Code Playgroud)

这是route.php代码

<?php

Route::get('/','PagesController@home');
Run Code Online (Sandbox Code Playgroud)

welcome.blade.php代码是默认代码,除了它显示变量$ name而不是laravel 5.我出错了什么?

Lim*_*nte 8

当您引用类似extends ControllerPHP的类搜索当前命名空间中的类时.

在这种情况下,这是一个全局命名空间.然而,Controller该类显然不存在于全局命名空间中,而是存在于App\Http\Controllers.

您需要在顶部指定命名空间PagesController.php:

namespace App\Http\Controllers;
Run Code Online (Sandbox Code Playgroud)