Convenios de codificación para PHP

LIBP-0089 (Libro de pautas)

Pautas

TítuloCarácter
IndentaciónObligatoria
Longitud de la líneaObligatoria
Terminación finalObligatoria
Demarcación de código en PHPObligatoria
Manejo de cadenasObligatoria
Manejo del ArrayObligatoria
Llamadas a funciónObligatoria
Estructuras de controlObligatoria

Indentación

La indentación debe de consistir de 4 espacios. Las tabulaciones no están permitidas.

Longitud de la línea

Lo mas recomendable es mantener líneas que como máximo tengan de longitud 80 caracteres. Esto convierte al código es mas practico y eficiente,pero en circunstancias especiales no es posible. El tamaño máximo permitido para una linea de PHP es de 120 caracteres.

Terminación final

La terminación de la línea sigue la convención del archivo UNIX. Las líneas deben finalizar con un salto de línea única (LF).

Demarcación de código en PHP

No se deben utilizar atajos. SI los ficheros solo contienen código PHP, la etiqueta de cierre puede ser omitida. El código PHP siempre debe comenzar delimitado por las etiquetas PHP como en el ejemplo siguiente;

<?php
 
?>

Manejo de cadenas

Cuando una cadena es literal (no contiene substituciones) se marca la cadena entre comillas simples.

$a = 'Example String';

Sin embargo cuando una cadena incluye diferentes apostrofes debe de marcarse con comillas dobles

$sql = "SELECT `id`, `name` from `people` "
     . "WHERE `name`='Fred' OR `name`='Susan'";

Cuando se realizan substituciones de dentro de la cadena deben de reflejarse de alguna de estas dos maneras

$greeting = "Hello $name, welcome back!"; 

$greeting = "Hello {$name}, welcome back!";

La concatenación de cadenas debe de realizarse utilizando el operador ".". Se debe de añadir un espacio delante y posteriormente al operador

$company = 'Zend' . ' ' . 'Technologies';

Es aconsejable dividir la instrucción en varias lineas para mejorar la legibilidad. En este caso cada línea utiliza el operador "."

$sql = "SELECT `id`, `name` FROM `people` "
     . "WHERE `name` = 'Susan' "
     . "ORDER BY `name` ASC ";

Manejo del Array

Un array con un índice debe de comenzar situando el mismo a 0. No esta permitido utilizar números negativos. Cuando el array se declara utilizando el constructor, se debe de dejar un espacio tras cada delimitador para mejorar la legibilidad:

$sampleArray = array(1, 2, 3, "ispCP");

También esta permitido declarar arrays inicializados mediante el constructor. En este caso, cada linea sucesiva debe de alinearse con la superior de la siguiente manera:

$sampleArray = array(
    1, 2, 3, "ispCP",
     $a, $b, $c,
    56.44, $d, 500
);

Llamadas a función

Las funciones deben de invocarse sin espacios entre el nombre de la función , el paréntesis de apertura y el primer parámetro. Después deben de situarse comas entre cada parámetro y no existir espacios entre el último parámetro ,el último paréntesis y el punto y coma final.

<?php
$var = foo($bar, $baz, $quux);
?>

Estructuras de control

Esto incluye a las instrucciones de tipo if, for, while, switch. Las instrucciones de control deben de tener un espacio entre la palabra reservada del control y el paréntesis. De esta manera se distinguen de las llamadas a funciones. Un ejemplo de una instrucción if es la siguiente:

<?php
if ((condition1) || (condition2)) {
     action1;
} elseif ((condition3) && (condition4)) {
     action2;
} else {
    defaultaction;
}
?>