¿Por qué algunos scripts omiten la etiqueta PHP de cierre, '?>'? [duplicar]

Resuelto Naughty.Coder asked hace 54 años • 7 respuestas

En algunos scripts veo que omiten escribir una etiqueta de cierre ?>para el script. ¿Por qué es así y debería hacer esto también?

(Estoy seguro de que no lo han olvidado).

Naughty.Coder avatar Jan 01 '70 08:01 Naughty.Coder
Aceptado

Bueno, omitir la etiqueta de cierre es sólo una solución para evitar espacios en blanco y otros caracteres al final del archivo. Por ejemplo, cualquier carácter que se agregue accidentalmente detrás de la etiqueta de cierre generará un error al intentar modificar la información del encabezado más adelante.

Quitar la etiqueta de cierre es una especie de "buena práctica" que se refiere a muchas pautas de codificación.

dhh avatar Jul 10 '2010 13:07 dhh

Desde PHP: Separación de instrucciones

La etiqueta de cierre de un bloque PHP al final de un archivo es opcional y, en algunos casos, omitirla es útil cuando se usa include()o require(), por lo que no aparecerán espacios en blanco no deseados al final de los archivos y aún podrá agregar encabezados a la respuesta más tarde. También es útil si utiliza el almacenamiento en búfer de salida y no le gustaría ver espacios en blanco no deseados agregados al final de las partes generadas por los archivos incluidos.

Metalshark avatar Jul 10 '2010 13:07 Metalshark

php.net en etiquetas PHP :

Si un archivo es código PHP puro, es preferible omitir la etiqueta de cierre PHP al final del archivo. Esto evita que se agreguen espacios en blanco accidentales o nuevas líneas después de la etiqueta de cierre de PHP, lo que puede causar efectos no deseados porque PHP comenzará a almacenar en búfer la salida cuando el programador no tenga la intención de enviar ninguna salida en ese punto del script.

brismuth avatar Oct 17 '2013 20:10 brismuth