syntax title - ¿Qué significa ":" en PHP?




wordpress blog (7)

while(expression = true) : run some code ;

Posible duplicado: ¿Qué es “:” en PHP?

¿Qué significa el : en el siguiente código PHP?

<?php
    while (have_posts()) : the_post();
?>

es como:

<?php
while(have_posts()) {
    the_post();
}
?>

Está diciendo que mientras have_posts() es true ejecuta the_post() .


while (expression is true : code is executed if expression is true)

Hay un ejemplo listado en la documentación de while que explica la sintaxis:

Al igual que con la sentencia if, puede agrupar varias sentencias dentro del mismo bucle while rodeando un grupo de sentencias con llaves o utilizando la sintaxis alternativa:

while (expr):
    statement
    ...
endwhile;

Una respuesta aquí lo explica así:

Este operador (:) se usa principalmente en codificación incrustada de php y html.

Usando este operador puedes evitar el uso de llaves. Este operador reduce la complejidad en la codificación embebida. Puede usar este operador (:) con if, while, for, foreach y más ...

Sin (:) operador

<body>
<?php if(true){ ?>
<span>This is just test</span>
<?php } ?>
</body>

Con el operador (:)

<body>
<?php if(true): ?>
<span>This is just test</span>
<?php endif; ?>
</body>

Esta notación es para evitar el uso de llaves (generalmente cuando se incrusta PHP en HTML) y es equivalente a:

while (have_posts())
{
    the_post();
}

Una cadena entre comillas simples no tiene variables dentro de ella interpretadas. Una cadena entre comillas dobles lo hace.

Además, una cadena de comillas dobles puede contener apóstrofes sin barras invertidas, mientras que una cadena de comillas simples puede contener comillas sin escaparse.

Las cadenas de comillas simples son más rápidas en tiempo de ejecución porque no necesitan ser analizadas.





php syntax