yma*_*kux 4 php psr-0 psr-4 psr-2 psr-1
据我了解,根据 PSR-2 标准,我们应该将包含类的目录名称大写。但是如果该目录还包含一些其他文件,例如样式和脚本怎么办?
假设我有一个插件目录,每个插件都可以包含模板和其他内容:
plugins
PluginName // lowercase?
PluginName.php // Contains base class "PluginName"
templates
home.tpl
css
css.css
js
js.js
PluginName2
....
Run Code Online (Sandbox Code Playgroud)
这个结构正确吗?
您可以根据自己的喜好命名目录。
但是,如果您打算使用 PSR-0 或 PSR-4 自动加载 PHP 类,则相关类名称部分所涉及的目录名称必须完全匹配。
PSR-2 没有做出任何假设,也没有给出类名或命名空间必须具有的情况的规则。
PSR-1 在第 3 章中确实指出:“类名必须在 StudlyCaps 中声明。” 然而,这只影响包含此类的文件的文件名。Name\Space -> directory/for/that/namespace如果您使用 PSR-4 自动加载,并且为包含代码的每个目录定义完整的映射,您仍然可以避免在路径中使用命名空间的任何部分。
PSR-1 没有任何关于命名空间格式的规则,因此您也可以避免在此处使用大写字母,从而避免在目录路径中使用大写字母。
请注意,在将名称空间/类名映射到文件系统路径和文件时,PSR-0 和 PSR-4 自动加载均区分大小写。所以最终,无论如何,您都会拥有区分大小写的文件系统布局。
另请注意,大多数命名空间也使用 StudlyCaps,我认为使用小写字母是不寻常的。
| 归档时间: |
|
| 查看次数: |
3952 次 |
| 最近记录: |