phpcs - 类必须位于至少一个级别的命名空间中 - 如何修复


phpcs - class must be in a namespace of at least one level - how to fix?

我正在使用 laravel 4.2。

假设有这样的类:

class BShopsController extends ShopsController

为了解决这个问题,我尝试使用命名空间,让我们这样说:

namespace app'controllers;

然后它找不到商店控制器

所以我添加

use 'ShopsController;

然后我得到错误:

类 BShops 控制器不存在

我应该首先使用什么命名空间,这样它就不会破坏任何东西?

编辑:

BShops控制器和商店控制器位于文件夹商店中

由于您的文件位于 Shops 文件夹中,并且我相信 Shop 文件夹位于应用程序文件夹中,因此您应该按以下方式为您的类命名。

<?php namespace Shops;
class BShopsController extends ShopsController{}

同样地

<?php namespace Shops;
    class ShopsController{}

所以在 Shhetri 的帮助下,这个 在 Laravel 4 中使用命名空间

我这样做了:

namespace App'Controllers'Shops;
class BShopsController extends ShopsController{}

同样在路由中.php则需要更改为以下内容:

Route::controller('shops', 'App'Controllers'Shops'ShopsController');

在哪里调用action()方法 - 也需要使用命名空间。

还需要运行

composer dump-autoload -o 

否则是错误。

同样在商店Contrller需要这样做:

use 'App'Controllers'BaseController;

因为 Shop 控制器位于 BaseController 以外的另一个命名空间中,并且找不到它。但是是从BaseController扩展的,所以需要它。