2009-11-01 8 views
5

PHP me permite:Cerrar declaración con; ¿o no?

Hello, my name is <?php echo $name ?>, and stuff. 

¿Está bien hacer en lugar de

Hello, my name is <?php echo $name; ?>, and stuff. 

Sé que el <?= ?> se le está quitando, es este otro de esos accesos directos a matar?

+2

La sintaxis correcta es, por supuesto, ' '... – bobince

+0

No entiendo por qué necesita escribir 32 caracteres (sin incluir el valor real) para realizar una de las operaciones más comunes en PHP (imprimir contenido escapado en HTML). – gahooa

+0

De hecho, hago todo eso en un controlador, por lo que mi código es bueno tal como está: P –

Respuesta

11

Técnicamente está bien, pero la mayoría de la gente va a recomendar no hacerlo. Es un problema de "mejores prácticas". Si adquiere el hábito de dejar el punto y coma en líneas únicas de código como este, es más probable que se olvide de hacerlo en secciones más grandes de código donde se requiere .

+0

Es bueno saberlo, gracias. –

0

yo no contar con que es legal, ya que algo como esto es legal:

<?php 
    if($do_display) { 
?> 
    <div id="display"> 
    </div> 
<?php 
    } 
?> 

OMI, que es una manera horrible de diseñar páginas, pero ... ya que eso es legal, me llevaría para creer que el estado del analizador se mantiene entre bloques, por lo que su atajo solo podría funcionar para un bloque. Esa es una prueba visceral no probada, pero educada. (Si funciona ahora, puede que no sea pronto, vemos lo que está sucediendo con <?= ?>). También podría dejar caer el punto y así conseguirlo.

0

No es tanto un atajo como un mal hábito que el intérprete no hace lo suficiente para desalentar.

Cuestiones relacionadas