style statement psr2 psr coding php coding-style

statement - Estándares de codificación PHP



psr2 (6)

Use un motor de plantilla cuando pueda. Si no ha aprendido una, o no quiere la sobrecarga (que es mínima), use prácticas que le hagan tener plantillas rápidas y sucias:

  • Las funciones que no muestran nada no tienen cabida en un archivo que muestra algo.
  • Imprimir variables, no HTML. Siempre que genere HTML, salga de PHP y escriba HTML con instrucciones de impresión para manejar cualquier pequeño detalle que sea necesario (acciones para formularios, ID para controles, etc.).
  • Recuerde, cuando incluye un archivo que rompe con PHP para imprimir contenido, se tratará igual que si lo hiciera en el archivo principal. Para que pueda crear plantillas simples que solo incluyan archivos PHP, esos archivos imprimirán las variables en los lugares correctos. Su index.php (o lo que sea) hace todo el trabajo real, pero toda la visualización se realiza mediante la "plantilla" secundaria.

Muchos tutoriales PHP entremezclan la lógica y el código de visualización. Me llevó años romper los malos hábitos que me animaban. En mi experiencia, no puedes separar las cosas demasiado en PHP, y la entropía te llevará hacia un código entremezclado si no lo peleas.

He estado buscando algunas pautas sobre cómo diseñar código PHP. He encontrado algunas buenas referencias, como las siguientes:

http://www.dagbladet.no/development/phpcodingstandard/

y esta pregunta en SO.

Sin embargo, nada de eso llega a lo que me pregunto específicamente, que es la integración de HTML y PHP. Por ejemplo:

  1. ¿Está bien tener un archivo PHP que comience con etiquetas HTML y solo haya insertado PHP donde sea necesario? ¿O debería tener una sección de php que contenga todo?
  2. Si tiene un trozo de código PHP en medio del cual hay un conjunto de eco que acaba de producir un bit fijo de HTML, ¿es mejor salir de php y simplemente poner el HTML directamente?
  3. ¿Deberían definirse todas las funciones en archivos php dedicados, o está bien definir un grupo de funciones en la parte superior de un archivo y llamarlas más tarde en ese mismo archivo?

Probablemente haya otras preguntas que me gustaría hacer, pero realmente estoy buscando a alguien que me señale algún tipo de recurso en línea que ofrezca orientación sobre la idea general de cómo HTML y PHP deberían combinarse.


Combinar el código de programación y los datos de salida (incluido HTML) es en mi humilde opinión una muy mala idea. La mayoría de los gurús de PHP que conozco usan un motor de plantillas como Smarty para ayudar a mantener las dos cosas separadas.


Los estándares de codificación deberían ser más que cómo diseñar su sintaxis, pero lamentablemente eso es lo que tienden a ser en PHP.

FWIW, phc imprimirá su código bonito en el estilo de Zend.


Realmente no hay un solo estándar común para estas cosas. La mayoría de los lenguajes son más restrictivos que PHP en este sentido.

En los últimos años, surgieron muchos de los llamados frameworks, y entre otras cosas, definen un conjunto de reglas para todo, desde nombrar dónde ubicar los archivos y hasta qué estilo debe seguir el código. Hay varios marcos alrededor, por lo que realmente no puede elegir uno y llamarlo el estándar. Sin embargo, la mayoría de los marcos tienen un subconjunto de comunalidad. Por ejemplo, la mayoría sigue alguna variante de los Estándares de codificación PEAR .


Por lo general, trato de seguir los estándares establecidos por las bibliotecas centrales del lenguaje ... oh, espera.

En serio, debe intentar y seguir el patrón MVC en cualquier aplicación web, ya que es una práctica bastante común independientemente del idioma. En PHP, esto se puede lograr de una manera rápida y sucia, tratando a index.php como su controlador y separando la lógica de datos y la presentación por archivo. Este pequeño paso al menos le permitirá mover su código a un marco completo cuando lo desee.


WHAT ARE CODING STANDARDS? Coding standards (also sometimes known as ‘Coding Conventions’ or ‘Coding Rules’) are a set of guidelines that a group of developers stick to, to ensure that they are all essentially “singing from the same hymn sheet”. It means that they all code in the same format and therefore, regardless of who is next to work on a particular bit of code, the syntax and formatting used will be instantly familiar. Naming conventions

El uso de convenciones de nomenclatura adecuadas se considera una buena práctica. A veces los programadores tienden a usar X1, Y1, etc. como variables y se olvidan de reemplazarlos por otros significativos, causando confusión.

Para evitar este desperdicio de tiempo, generalmente se considera una buena práctica usar nombres descriptivos en el código dado que tratamos con datos reales.

Ejemplo: una variable para tomar en peso como parámetro para un camión puede llamarse TrkWeight o TruckWeightKilograms, siendo TruckWeightKilograms el más preferible, ya que es reconocible al instante. Ver nombres de CamelCase de variables.