7

例如 Symfony 使用\Controller. Yii2 使用\controllers\models

是否有关于...s|es类似 PSR 的标准?

4

1 回答 1

12

没有一个 PSR 指定在命名空间中是使用单数还是复数。这通常是框架的约定。大小写也是如此。

您是否可以在您选择的框架中使用您喜欢的命名约定(如果有的话)主要取决于框架本身,甚至可能在框架的某些部分内有所不同。在 Symfony 的情况下,默认情况下它是单数的,但只要您的路由配置使用正确的名称App\Controller,它很容易更改为App\Controllers或者如果您愿意。App\controllers

当偏离框架的约定时,您可能会遇到问题,因为它在配置您的应用程序时的期望。例如,Symfony 3 会在将命令放在Command/文件夹中并且类名以Command. 当您偏离这一点时,您必须手动注册它们。另一方面,Symfony 4 使用新的autiwiringautoconfigure服务配置中的默认值,并将根据它们是否实现正确的接口来检测命令 - 直接或通过扩展基本命令类间接地 - 因此可以具有您喜欢的任何名称,并且可以放在任何文件夹中。因此,即使在框架内或框架的不同版本之间,将名称更改为推荐以外的名称也可能会产生不同的影响。

于 2017-12-29T10:08:36.303 回答