2012-08-10 7 views
10

¿Qué es la convención de codificación estándar PSR-2 para la inicialización de matrices y el encadenamiento de métodos?PSR ¿Norma de codificación para matrices y encadenamiento de métodos?

$foo = array(
    'one' => 1, 
    'two' => 2 
); 

$rows = DB::select('mytable') 
    ->where_id($id) 
    ->get_one(); 
+0

¿Qué es 'PSR-2 Standard coding convention'? – Jocelyn

+2

https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md – Michelle

+0

@Jocelyn "Recomendación de estándares de PHP" elaborada por Framework Interoperability Group, diversión diversión –

Respuesta

13

PSR-2 actualmente no especifica ni

PD: incluso en las nuevas normas (al tener antes de Cristo no puede ser una justificación) PHP no puede ser sencillo y existen requisitos confusos como:

Cuando está presente, las declaraciones abstractas y finales DEBEN preceder a la declaración de visibilidad.

Cuando está presente, la declaración estática DEBE venir después de la declaración de visibilidad.

Stay clase, PHP

+0

¿Alguno de los otros hace? – Michelle

+3

"No especifica ninguno" es un doble negativo, pero no puede hacer una letra edita. No estoy seguro de cómo esas dos especificaciones son "confusas". Es bastante sencillo. Si se declara un método "abstracto" o "final", tiene que formatear así: ' myMethod función protegida abstracta();' ' myMethod función pública final();' métodos estático debe ser así: 'función estática pública myStaticMethod();' Esto permite a los lectores ver rápidamente qué es qué, y permite completar código más fácilmente en IDEs. – CrimsonKissaki

2

En esta etapa ninguno de aquellos están cubiertos explícitamente en la norma PSR-2. En el conclusion que no tenga en cuenta que una serie de áreas se han omitido intencionalmente, incluyendo:

  • Operadores y asignación
  • alineación Inter-line

Las únicas directrices pertinentes sería el más generales sobre cosas como longitudes de línea y cantidad de espacios para sangría.

Otras normas que se ocupan de esos temas incluyen PEAR y Zend.

Cuestiones relacionadas