约定

编辑该页面

警告:你浏览的文档欧宝体育电话欧宝娱乐app下载地址Symfony 2.3,不再维护。

这个页面的更新版本Symf欧宝娱乐app下载地址ony 6.2(当前的稳定版本)。

约定

编码标准文档描述了Symfony项目和内部的编码标准和第三方包。欧宝娱乐app下载地址本文档描述了编码核心框架中使用的标准和规范,使之更一致的和可预测的。建议您遵循他们自己的代码,但是你不需要。

方法名称

当一个对象有一个“主要”许多关系相关的“东西”(对象、参数…),方法名称规范化:

  • get ()
  • 设置()
  • 有()
  • 所有()
  • 替换()
  • remove ()
  • clear ()
  • isEmpty ()
  • add ()
  • 注册()
  • count ()
  • 键()

使用这些方法时只允许很明显,有一个主要的关系:

  • 一个CookieJar有很多饼干对象;
  • 一个服务容器有很多服务和许多参数(作为服务是主要关系,这个关系的使用命名约定);
  • 一个控制台输入有很多参数和选项。没有“主要”关系,所以命名约定不适用。

对于许多关系约定不适用的地方,必须使用以下方法(而不是XXX是相关的名称):

主要的关系 其他关系
get () getXXX ()
设置() setXXX ()
n /一个 replaceXXX ()
有() hasXXX ()
所有() getxxx ()
替换() setxxx ()
remove () removeXXX ()
clear () clearXXX ()
isEmpty () isEmptyXXX ()
add () addXXX ()
注册() registerXXX ()
count () countXXX ()
键() n /一个

请注意

而“setXXX”和“replaceXXX”非常相似,有一个显著的区别:“setXXX”可能取代,或添加新元素的关系。“replaceXXX”,另一方面,不能添加新的元素。如果一个未识别的关键是通过“replaceXXX”必须抛出一个异常。

的用法

不时地,一些类和/或方法中弃用框架;当一个功能实现不能改变由于向后兼容性的问题,但我们仍想提出一个“更好”的选择。在这种情况下,旧的就可以实现弃用

功能被添加一个标记为弃用@deprecatedphpdoc相关类、方法、属性…:

1 2 3
/ * * *@deprecated弃用自版本2.8,在3.0被移除。而是使用XXX。* /

弃用消息应该表明当类/方法被弃用的版本,这个版本将被删除,并且只要有可能,这个功能是如何取代。

一个PHPE_USER_DEPRECATED错误也必须帮助人们迁移开始触发一个或两个小版本之前的版本功能将被删除(取决于临界的删除):

1
@trigger_error (“XXX()弃用自版本2.8和3.0将被删除。使用XXX”。,E_USER_DEPRECATED);

没有@-silencing运营商从弃用通知,用户需要选择退出。沉默互换这种行为时,允许用户选择他们已经准备好应付(通过添加一个自定义的错误处理程序所使用的Web调试工具栏或PHPUnit)桥)。

这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。