2010-10-14 17 views
7

Aloha,Convenciones de nomenclatura - Trabajar con PHP y MySQL

Acabo de empezar a programar en PHP y tengo una pregunta básica sobre el convenio de nomenclatura. He leído muchos estándares de codificación PHP después de leer this post. Tiene perfecto sentido para mí, ya que prefiero usar camelCase al nombrar variables. Como voy a trabajar con MySQL, también leo las convenciones de nomenclatura de bases de datos. Hay muchas preferencias variadas, pero parece que siempre que seas consecuente, está bien. Sin embargo, una cosa que me pareció notar es que la mayoría de las convenciones de nombres de bases de datos dicen que los atributos comienzan con una letra mayúscula, mientras que en PHP (así como la mayoría de las programaciones), las variables deben comenzar con letras minúsculas. Voy a utilizar el modelo MVC con DAO y VO. Realmente quiero que mis VO reflejen las tablas de mi base de datos, pero la carcasa de la primera letra es conflictiva. ¿Debo dejar la carcasa mal hecha, o cambiar una para que sean las mismas? ¿Como lo hacen ustedes?

Gracias de antemano,

Frank

Respuesta

0

hacen así que les guste, pero, como usted mismo ha dicho:

[...] todo el tiempo que esté en consonancia , está bien.

prefiero usar la misma carcasa para ambos y comenzar con un carácter en minúsculas.

0

Prefiero usar todas las minúsculas en los nombres de tablas y columnas y los espacios en blanco son reemplazados por guiones bajos. Nombre de la tabla en singular del nombre del modelo. Por lo general, ayuda a convertir la estructura de la base de datos al estándar de modelo PEAR.

class User extends MyActiveRecord 
{ 
    public function getFirstName() 
    { 
    //... 
    } 
} 

SELECT * FROM user WHERE first_name LIKE 'Bill' 

Claves foráneas como "alguna información específica" _ "nombre de tabla foránea" _ "nombre de columna externa". Ayuda a averiguar qué tabla vinculamos por clave externa.

SELECT * FROM post LEFT JOIN user ON post.author_user_id = user.id 
+0

Gracias a todos por sus comentarios, que ha definitivamente me ayudó a llegar a algunas conclusiones. He decidido usar minúsculas con guiones bajos para mi nombre de base de datos. – LeTanc

5

Sugeriría la minúscula utilizada con guiones bajos para el nombre de la base de datos ya que esto hará que su código sea más flexible.

Ejemplo:

Digamos que el uso de MySQL como base de datos y el nombre de un FooBar mesa. Ahora el cliente desea cambiar a PostgreSQL como una base de datos alternativa, esto hace que su nombre de tabla se convierta en un problema ya que postgres usa nombres en minúsculas o está entre comillas dobles.

MySQL sintaxis de consulta:

SELECT * FROM FooBar 

Postgres consulta sintaxis:

SELECT * FROM "FooBar" 

Si se hubiera seguido un esquema de denominación genérica se puede utilizar una consulta para tanto

SELECT * FROM foo_bar 
1

Ya, para Base de datos y tabla, todos prefieren subrayado. Pocos le gustan todos mayúsculas y pocos todos minúsculos. Pero si Phill es correcto, votaré por todas las minúsculas para DB y tabla.

Cuestiones relacionadas