命名约定 - 使用PHP和MySQL

LeT*_*anc 7 php mysql naming-conventions

阿罗哈,

我刚刚开始用PHP编程,并有一个基本的命名约定问题.阅读这篇文章后,我已经阅读了很多PHP编码标准.这对我来说非常有意义,因为在命名变量时我已经更喜欢使用camelCase.由于我将使用MySQL,我还阅读了数据库命名约定.有很多不同的偏好,但似乎只要你一致,就可以.然而,我似乎注意到的一件事是大多数数据库命名约定都说用大写字母开始属性,而在PHP(以及大多数编程)中,变量应该以小写字母开头.我将使用带有DAO和VO的MVC模型.我真的希望我的VO反映我的数据库表,但第一个字母的大写是冲突的.我应该让套管不匹配,还是更换套管以使它们都相同?你们是怎么做到的?

提前致谢,

坦率

Phi*_*ord 5

我建议使用带有下划线的小写字母用于数据库命名,因为这将使您的代码更加灵活.

例:

假设您使用MySQL作为数据库并命名表FooBar.现在客户端想要切换到PostgreSQL作为替代数据库,这会导致您的表名成为问题,因为postgres使用小写命名或用双引号括起来.

MySQL查询语法:

SELECT * FROM FooBar
Run Code Online (Sandbox Code Playgroud)

Postgres查询语法:

SELECT * FROM "FooBar"
Run Code Online (Sandbox Code Playgroud)

如果您遵循通用命名方案,则可以对两者使用一个查询

SELECT * FROM foo_bar
Run Code Online (Sandbox Code Playgroud)


oez*_*ezi 0

做你喜欢的事,但是,正如你自己所说:

[...]只要你保持一致,就可以了。

我更喜欢两者使用相同的大小写并以小写字符开头。