2008-11-20 30 views
10

He estado buscando algunas pautas sobre cómo diseñar código PHP. He encontrado algunas buenas referencias, tales como las siguientes:Estándares de codificación PHP

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

y this question el 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 tenga insertado PHP cuando 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 código HTML directamente?
  3. ¿Deben 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 formular, 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 .

+0

Ambos enlaces están muertos. – CXJ

Respuesta

6

No existe 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 su 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 del PEAR Coding Standards.

8

La combinación de código de programación y 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.

+1

lalala ... gurú dun usa smarty para separar el código HTML y PHP – ajreal

4

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

En serio, debe intentar y seguir el MVC pattern 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 index.php como su controlador y separando la lógica de datos y presentación por archivo. Este pequeño paso al menos le permitirá mover su código a un marco de funciones completo cuando lo desee.

3

Utilice un motor de plantillas cuando pueda. Si usted no ha aprendido uno, o no desea que la cabeza (que es mínimo), utilizar prácticas que hacen que le dé rápido y sucio de plantillas:

  • Las funciones que no muestra nada no tienen lugar en una archivo que muestra algo.
  • Imprime 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 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 de PHP entremezclan la lógica y muestran el código. 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.

+0

Considero que php es un motor de plantillas en sí mismo ... puedes sobrevivir perfectamente sin agregar smarty etc. a la mezcla. La única vez que buscaría algo como eso sería si tuviera terceros para editar plantillas en línea, etc., y quería restringir lo que pueden hacer. – starmonkey

2

Los estándares de codificación deben 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 Zend.

0
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. Algunas veces los programadores tienden a usar X1, Y1, etc. como variables y olvidan 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 ya que tratamos con datos reales.

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

Cuestiones relacionadas