Algunas personas juran al cerrar sus archivos PHP ?>
, algunos dicen que está más optimizado para dejarlo.
Sé que no es esencial tenerlo allí, solo me pregunto cuáles son los pros y los contras de hacer esto, y cuál es la mejor práctica.
php
code-formatting
Steve Robbins
fuente
fuente
If a file is pure PHP code, it is preferable to omit the PHP closing tag at the end of the file. This prevents accidental whitespace or new lines being added after the PHP closing tag, which may cause unwanted effects because PHP will start output buffering when there is no intention from the programmer to send any output at that point in the script.
Respuestas:
No es tanto una cuestión de rendimiento: analizar el seguimiento
?>
es trivial y no hará ninguna diferencia notable, a menos que incluya un millón de archivos por segundo.IIRC, php.net recomienda NO agregar el
?>
, y las razones son más o menos así:?>
, que se enviará al cliente, lo que a su vez puede generar errores oscuros de 'encabezados ya enviados' (esto sucede cuando un archivo incluido contiene espacios en blanco e intenta establecer un encabezado después incluyendo ese archivo)fuente
No, están equivocados.
?>
es opcional en PHP al final de un archivo. Y encontrarás una buena razón para esto. La más importante es que un espacio vacío al final de un archivo no le impedirá enviar encabezados. Este es un error difícil de detectar porque puedes encontrarlo en cualquier archivo en cualquier lugar.La forma habitual de hacerlo es poner una etiqueta de cierre cuando PHP se mezcla con HTML y no ponerlo para archivos PHP puros. Incluso es un estándar de codificación del marco ZEND y muchos otros.
Optimizado significa que el código se ejecuta más rápido. Esto es fácil de demostrar que están equivocados. Perfile el código y descubra que le están diciendo tonterías.
fuente
Creo que se recomienda a los novatos que eviten agregarlo para que no causen el envío accidental de caracteres adicionales de nueva línea. Dado que no es esencial tenerlo como usted ha mencionado, creo que el razonamiento general es que es mejor dejarlo para evitar errores.
No creo que haya ninguna "optimización" involucrada.
Le señalaría aquí: /programming/4410704/php-closing-tag y aquí: /programming/3219383/why-do-some-scripts-omit-the -closing-php-tag
fuente
?>
archivos que contienen PHP puro.