约定
编辑本页警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 2.3,现已不再维护。
读本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。
约定
的编码标准文档描述了Symfony项目以及内部和第三方包的编码标准。ob娱乐下载本文档描述了核心框架中使用的编码标准和约定,以使其更加一致和可预测。我们鼓励您在自己的代码中遵循它们,但您不需要这样做。
方法名称
当一个对象与相关的“事物”(对象,参数,…)有一个“main”many关系时,方法名被规范化:
get ()
设置()
有()
所有()
替换()
remove ()
clear ()
isEmpty ()
add ()
注册()
count ()
键()
只有在明确存在以下主要关系时才允许使用这些方法:
- 一个
CookieJar
有很多饼干
对象; - 一个服务
容器
有许多服务和许多参数(由于服务是主要关系,命名约定用于此关系); - 一个控制台
输入
有许多参数和许多选项。没有“main”关系,因此命名约定不适用。
对于许多不适用该约定的关系,必须使用以下方法(其中XXX
是相关事物的名称):
主要的关系 | 其他关系 |
---|---|
get () |
getXXX () |
设置() |
setXXX () |
N/A | replaceXXX () |
有() |
hasXXX () |
所有() |
getxxx () |
替换() |
setxxx () |
remove () |
removeXXX () |
clear () |
clearXXX () |
isEmpty () |
isEmptyXXX () |
add () |
addXXX () |
注册() |
registerXXX () |
count () |
countXXX () |
键() |
N/A |
请注意
虽然“setXXX”和“replacxxx”非常相似,但有一个显著的区别:“setXXX”可以替换或向关系中添加新元素。另一方面,"replaceXXX"不能添加新元素。如果将一个无法识别的键传递给“replaceXXX”,则必须抛出异常。
的用法
时不时地,框架中的一些类和/或方法会被弃用;当一个特性实现因为向后兼容性问题而无法更改时,就会发生这种情况,但我们仍然想提出一个“更好的”替代方案。在这种情况下,旧的实现可以简单地为弃用.
属性将某个特性标记为已弃用@deprecated
Phpdoc到相关类,方法,属性,…
1 2 3
/ * * *@deprecated2.8版后已弃用,将在3.0中移除。请改用XXX。* /
弃用消息应该指出类/方法被弃用的版本,将被移除的版本,以及在可能的情况下,该特性是如何被替换的。
一个PHPE_USER_DEPRECATED
错误还必须触发,以帮助迁移的人开始一个或两个次要版本之前的版本,该功能将被删除(取决于删除的重要性):
1
@trigger_error ('XXX()自2.8版起已弃用,并将在3.0中删除。用XXX代替。”, E_USER_DEPRECATED);
没有@-silencing运营商,用户将需要选择退出弃用通知。沉默交换了这种行为,并允许用户在准备好应对它们时选择加入(通过添加一个自定义错误处理程序,如Web调试工具栏或PHPUnit桥接所使用的错误处理程序)。