CodeIgniter User Guide Version 1.6.1


Sintaxis Alternativa PHP para Archivos de Vista

En caso de no utilizar el motor de plantilla de CodeIgniter, estará usando PHP puro en su archivos de Vista. Para minimizar el código PHP en estos archivos, y para que sea más fácil identificar los bloques de código se recomienda que utilice sintáxis alternativa PHP para las estructuras de control y etiquetas cortas para las declaraciones "echo". Si no está familiarizado con esta sintaxis, ésta le permite eliminar las llaves de su código, y eliminar las declaraciones "echo".

Soporte Automático para Etiquetas Cortas

Nota: Si encuentra que la sintáxis que se describe en esta página no funciona en su servidor podría ser que las "etiquetas cortas" esten desactivadas en su archivo ini de PHP. CodeIgniter, opcionalmente, reescribirá etiquetas cortas sobre la marcha, lo cual le permite utilizar la sintáxis, incluso si su servidor no lo soporta. Esta característica puede ser habilitada en su archivo config/config.php.

Tenga en cuenta que si hace uso de esta función, si encuentra errores de PHP en sus archivos de vista, el mensaje de error y el número de línea no se muestran correctamente. En lugar de ello, todos los errores que se mostrará como errores eval().

Alternativas Echos

Normalmente para "echo", o imprimir una variable se haría esto:

<?php echo $variable; ?>

Con la sintáxis alternativa lo puede hacer de esta manera:

<?=$variable?>

Estructuras de Control Alternativas

Las estructuras de control, como if, for, foreach, y while pueden ser escritas en un formato más simple también. Aquí tiene un ejemplo de uso de foreach:

<ul>

<?php foreach($todo as $item): ?>

<li><?=$item?></li>

<?php endforeach; ?>

</ul>

Note que no hay llaves. En lugar de ello, la llave que cierra es reemplazada con un endforeach. Cada una de las estructuras de control mencionadas anteriormente tiene una sintaxis similar de cierre: endif, endfor, endforeach, y endwhile

Observe también que en lugar de utilizar un punto y coma después de cada estructura (excepto la última), hay dos puntos. Esto es importante!

Aquí hay otro ejemplo, usando if/elseif/else. Nótese los dos puntos:

<?php if ($username == 'sally'): ?>

   <h3>Hola Sally</h3>

<?php elseif ($username == 'joe'): ?>

   <h3>Hola Joe</h3>

<?php else: ?>

   <h3>Hola usuario desconocido</h3>

<?php endif; ?>