命名约定

时间:2012-07-30 15:39:16

标签: php orm doctrine doctrine-orm

多对一/一对多关系的文件类和属性是否存在命名约定?这可能听起来像是一个关于命名集中的经典问题,但事实并非如此,这是一个适用于关系的问题,例如,在Doctrine中说。

这可能很愚蠢,但名字非常重要,不是吗?

在这种情况下,我有一个实体 GolferProfile ,一个实体 Category ,因此需要一个中间 {{1实体。

我应该为中间实体使用什么类名?

GolferProfile-Category

与属性相同......我看到人们使用每个类的第一个字母,在这种情况下为GolferProfileCategory OR GolferProfile_Category OR GolferProfile-Category OR anything else? 。这非常难以阅读,但另一方面,我们不想使用像$gc这样的长名称?

对此有任何想法将有助于我理解如何使用姓名。欢呼

3 个答案:

答案 0 :(得分:3)

考虑到PHP是一种类似C的语言,我会遵循它的学说。

参考:http://www.psgd.org/paul/docs/cstyle/cstyle04.htm

答案 1 :(得分:3)

没有经验法则,但我建议在为所有内容命名约定时坚持一个单一的练习:你似乎已经使用camelCase了,那么为什么不将它用于其他一切呢? / p>

GolferProfile
Category
GolferProfileCategory

$golferProfile
$category
$golferProfileCategory

答案 2 :(得分:2)

class GolferProfile-Category {}

生成a syntax error

GolferProfile_Category {}

下划线将由目录分隔符in PSR-0替换。

GolferProfileCategory {} // is the winner.
  

与属性相同...我看到人们使用每个类的第一个字母,在这种情况下将是$ gc。这非常难以阅读,但另一方面,我们不想使用像$ golferprofile_category这样的长名称?

$gc是一个可怕的名字。没有人会知道这意味着什么。如果你指的是变量,它是类的一个实例,我总是去找camelCase。

$golferProfileCategory

根据我的经验,大多数人(至少在PHP中)都是这样做的。