Puede leer sobre esto en Alternative syntax for control structures en el manual de PHP. Nuevo formato, el código que envió el siguiente aspecto:
if (preg_match('/foo.*bar/','foo is a bar')):
echo 'success ';
echo 'foo comes before bar';
endif;
Este código es equivalente a:
if (preg_match('/foo.*bar/','foo is a bar')) {
echo 'success ';
echo 'foo comes before bar';
}
Esta sintaxis está disponible para varias otras estructuras de control también.
if (condition):
// your if code
elseif (other_condition):
// optional elseif code
else:
// optional else code
endif;
while (condition):
// your while code
endwhile;
for (condition):
// your for code
endfor;
foreach (condition):
// your foreach code
endforeach;
switch (condition):
// your switch code
endswitch;
como las respuestas a continuación han dicho, esta es una sintaxis alternativa. También es terriblemente doloroso leer OMI, por favor evítelo en su propio código. – nickf
este tipo de sintaxis se usa en las plantillas cuando a menudo se abre y se cierra y se utiliza html en el medio. Es horrible e ilegible incluso en esos casos, y debe evitarse por completo. –
@ Lo'oris, no estoy de acuerdo contigo.Usarlo en tus plantillas puede mejorar la legibilidad si me preguntas: mira http://stackoverflow.com/questions/2788891/strange-php-syntax/2789008#2789008 para ver un ejemplo. –