例如,Symfony使用\Controller
。 Yii2使用\controllers
和\models
。
关于像PSR这样的...s|es
有标准吗?
PSR中没有一个指定在命名空间中是使用单数还是复数。这通常是框架的惯例。资本化也是如此。
是否可以使用您首选的命名约定 - 如果您有任何 - 在您选择的框架中主要取决于框架本身,甚至可能在框架的某些部分内有所不同。在Symfony的情况下,默认情况下它是奇异的App\Controller
,但只要您的路由配置使用正确的名称,它就很容易更改为App\Controllers
或App\controllers
。
当偏离框架的约定时,您可能会遇到问题,因为它在配置应用程序时有所期望。例如,当Symfony 3放在Command/
文件夹中时,它会自动加载您的命令,类名称后缀为Command
。当你偏离这个时,你必须手动注册它们。另一方面,Symfony 4在服务配置中使用新的autiwiring
和autoconfigure
默认值,并将根据它们是否通过扩展基本Command类直接或间接地实现正确的接口来检测命令,因此可以拥有您喜欢的任何名称并且可以放在任何文件夹中。因此,即使在框架内或框架的不同版本之间,将名称更改为推荐以外的其他内容也可能会产生不同的影响。