使用新的或现有的类定义路由时,php artisan 报错,显示找不到类。而对于同一个控制器的预定义路由却能正常工作。

9 浏览
0 Comments

使用新的或现有的类定义路由时,php artisan 报错,显示找不到类。而对于同一个控制器的预定义路由却能正常工作。

在新或旧控制器中添加新路由时出现错误。使用"php artisan route:list"命令会出现以下错误:

ReflectionException:类'App\Http\Controllers\Classname'不存在。请确认它是否存在,同时已存在的具有相同类的路由正常工作。运行在xampp php 7.2上。

web.php

Route::get('/selcetPlan','PlanStatusContoller@selectPlan');

PlanStatusController.php

with('plan',$plande);
    }
}

'''

 php artisan route:list

在命令行中给出以下错误

ReflectionException  : Class App\Http\Controllers\PlanStatusContoller does not exist at C:\xampp\htdocs\Project\vendor\laravel\framework\src\Illuminate\Container\Container.php:790
    786|         if ($concrete instanceof Closure) {
    787|             return $concrete($this, $this->getLastParameterOverride());}
    789|
  > 790|         $reflector = new ReflectionClass($concrete);
  Exception trace:
  1   ReflectionClass::__construct("App\Http\Controllers\PlanStatusContoller")
C:\xampp\htdocs\Project\vendor\laravel\framework\src\Illuminate\Containe
r\Container.php:790
  2 Illuminate\Container\Container::build("App\Http\Controllers\PlanStatusCont
oller") C:\xampp\htdocs\Project\vendor\laravel\framework\src\Illuminate\Containe
r\Container.php:667
  Please use the argument -v to see more details.

0
0 Comments

可能的原因有:

  1. Controller.php文件中没有你在web.php中定义的类。
  2. 你定义的控制器是错误的。

*如果你能附上错误的代码,我们可以更容易地给出确切的答案。

尝试在PlanStatusController.php文件的命名空间下添加以下代码:

use App\Http\Controllers\Controller;

附上的代码,请查看并帮助我解决问题。

在命名空间下添加以下代码:use App\Http\Controllers\Controller;

即使添加了use App\Http\Controllers\Controller,仍然存在相同的问题。

0