Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
laravel/PHP中具有相同名称空间的2个类_Php_Laravel - Fatal编程技术网

laravel/PHP中具有相同名称空间的2个类

laravel/PHP中具有相同名称空间的2个类,php,laravel,Php,Laravel,我对laravel/PHP中的工作流感到困惑。我有两个不同名称但名称空间相同的文件 档案: HomeController.php 名称空间:名称空间App\Http\Controllers 类名:HomeController HomeController_old.php 名称空间:名称空间App\Http\Controllers 类名:HomeController 问题是,它总是使用我创建的旧控制器文件,而不是新的控制器文件。有什么想法吗 更新 问题 当我在HomeController.php中

我对laravel/PHP中的工作流感到困惑。我有两个不同名称但名称空间相同的文件

档案:

HomeController.php

名称空间:名称空间App\Http\Controllers

类名:HomeController

HomeController_old.php

名称空间:名称空间App\Http\Controllers

类名:HomeController

问题是,它总是使用我创建的旧控制器文件,而不是新的控制器文件。有什么想法吗

更新

问题

当我在HomeController.php中编辑一个方法时,例如:create method,我的更改不会起任何作用,但当我在HomeController_old.php中编辑该方法时,我的更改会起作用。
之所以使用旧版本而不是新版本,是因为旧版本是在具有相同类名的新版本之前创建的,以解决此问题

composer dump autoload

您的类名应该是HomeController,而不是HomeController。名称空间很好。。名称空间通常指示文件夹路径。类名应该是不同的,因为您使用的是相同的类名。@Widada那么,为什么它使用旧的而不是我刚才创建的新的呢?使用旧的而不是新的是因为旧的是在具有相同类名的新的之前创建的,要修复此问题,请使用“composer dump autoload”命令。我的意思是,如果OP的类名是HomeController,则不会有自动加载方案将其映射到HomeController_old.php