SINTAXIS BÁSICA DE PHP
ETIQUETAS DE PHP
Cuando PHP interpreta un fichero,
busca las etiquetas de apertura y cierre, que son <?php y ?>, y que
indican a PHP dónde empezar y finalizar la interpretación del código. Este
mecanismo permite a PHP ser incrustado en todo tipo de documentos, ya que todo
lo que esté fuera de las etiquetas de PHP será ignorado por el intérprete.
PHP también permite las etiquetas
abreviadas <? y ?> (las cuales están desaconsejadas debido a que sólo
están disponibles si se habilitan con la directiva short_open_tag del fichero
de configuración php.ini, o si PHP se configuró con la opción --enable-short-tags
.
Si un fichero contiene código PHP
puro, es preferible omitir la etiqueta de cierre de PHP al final del fichero.
Esto impide que se añadan espacios en blanco o nuevas líneas después de la
etiqueta de cierre de PHP, los cuales pueden causar efectos no deseados debido
a que PHP iniciará la salida del buffer cuando no había intención por parte del
programador de enviar ninguna salida en ese punto del script.
<?php
echo "Hola mundo";
// ... más código
echo "Última sentencia";
// el script finaliza aquí sin etiqueta de cierre de PHP
echo "Hola mundo";
// ... más código
echo "Última sentencia";
// el script finaliza aquí sin etiqueta de cierre de PHP
SALIR DE HTML
Cualquier
cosa fuera del par de etiquetas de apertura y cierre es ignorada por el
intérprete de PHP, el cual permite que los ficheros de PHP tengan contenido
mixto. Esto permite que PHP sea embebido en documentos HTML para, por ejemplo,
crear plantillas.
<p>Esto va a ser ignorado por PHP y mostrado por el navegador.</p>
<?php echo 'Mientras que esto va a ser interpretado.'; ?>
<p>Esto también será ignorado por PHP y mostrado por el navegador.</p>
<?php echo 'Mientras que esto va a ser interpretado.'; ?>
<p>Esto también será ignorado por PHP y mostrado por el navegador.</p>
Esto funciona como se espera, porque
cuando PHP intercepta las etiquetas de cierre ?>, simplemente comienza a
imprimir cualquier cosa que encuentre (a excepción de una nueva línea
inmediatamente) hasta que dé con otra etiqueta de apertura a menos que se
encuentre en mitad de una sentencia condicional, en cuyo caso el intérprete
determinará el resultado de la condición antes de tomar una decisión de qué es
lo que tiene que saltar.
Vea el
siguiente ejemplo.
Usar
estructuras con condiciones
Ejemplo #1
Salida avanzada usando condiciones:
<?php if ($expresión == true): ?>
Esto se mostrará si la expresión es verdadera.
<?php else: ?>
En caso contrario se mostrará esto.
<?php endif; ?
Esto se mostrará si la expresión es verdadera.
<?php else: ?>
En caso contrario se mostrará esto.
<?php endif; ?
En este
ejemplo, PHP saltará los bloques donde la condición no se cumpla, incluso si
están fuera de las etiquetas de apertura/cierre de PHP, PHP los saltará según
la condición, ya que el intérprete saltará por encima de los bloques contenidos
dentro de una condición que no se cumpla.
Para
imprimir bloques de texto grandes, es más eficiente abandonar el modo
intérprete de PHP que enviar todo el texto a través de echo o print.
Existen
cuatro tipos de pares de etiquetas de apertura y de cierre que se pueden usar
en PHP. Dos de estas, <?php ?> y <script language="php">
</script>, siempre están disponibles. Las otras dos son las etiquetas
abreviadas y las etiquetas estilo ASP, que se pueden activar o desactivar desde
el fichero de configuración php.ini Aunque algunas personas encuentran las
etiquetas abreviadas y las etiquetas estilo ASP más convenientes, son menos
portables y generalmente no se recomiendan.
Ejemplo #2 Etiquetas de apertura y
de cierre de PHP:
1. <?php echo 'si se quiere mostrar documentos XHTML o XML, debe hacerse así'; ?>
2. <script language="php">
echo 'algunos editores (como FrontPage) no les gusta
las instruciones de proceso';
</script>
3. <? echo 'esta es la forma más simple, una instrución de procesado SGML'; ?>
<?= expresión ?> Esto es una forma abreviada de "<? echo expresión ?>"
4. <% echo 'Quizá use de forma opcional etiquetas de estilo ASP'; %>
<%= $variable; %> Esto es una forma abreviada de "<% echo $variable; %>"
2. <script language="php">
echo 'algunos editores (como FrontPage) no les gusta
las instruciones de proceso';
</script>
3. <? echo 'esta es la forma más simple, una instrución de procesado SGML'; ?>
<?= expresión ?> Esto es una forma abreviada de "<? echo expresión ?>"
4. <% echo 'Quizá use de forma opcional etiquetas de estilo ASP'; %>
<%= $variable; %> Esto es una forma abreviada de "<% echo $variable; %>"
Las
etiquetas vistas en los ejemplos uno y dos están siempre disponibles; el
ejemplo uno es el más común y recomendado de los dos.
SEPARACIÓN DE INSTRUCCIONES
Como en C o
en Perl, PHP requiere que las instrucciones terminen en punto y coma al final
de cada sentencia. La etiqueta de cierre de un bloque de código de PHP
automáticamente implica un punto y coma; no es necesario usar un punto y coma
para cerrar la última línea de un bloque de PHP. La etiqueta de cierre del
bloque incluirá la nueva línea final inmediata si está presente.
<?php
echo 'Esto es una prueba';
?>
<?php echo 'Esto es una prueba' ?>
<?php echo 'Hemos omitido la última etiqueta de cierre';
echo 'Esto es una prueba';
?>
<?php echo 'Esto es una prueba' ?>
<?php echo 'Hemos omitido la última etiqueta de cierre';
La etiqueta
de cierre de un bloque de PHP es opcional al final de un fichero, y en algunos
casos es útil omitirla cuando se usa include o require, para que no se
produzcan espacios en blanco al final de los ficheros, y así se podrán añadir
aún cabeceras para la respuesta posterior. También es práctico si se utiliza la
salida del buffer y no se desean espacios en blanco no deseados al final de las
partes generadas por ficheros incluidos.
COMENTARIOS
PHP soporta comentarios 'C', 'C++' y estilo consola Unix (estilo Perl).
Por ejemplo:
<?php
echo 'Esto es una prueba'; // Esto es un comentario estilo c++ de una sola línea
/* Esto es un comentario multi-línea
y otra lína de comentarios */
echo 'Esto es otra prueba';
echo 'Una prueba final'; # Esto es un comentario estilo consola de una sola línea
?>
echo 'Esto es una prueba'; // Esto es un comentario estilo c++ de una sola línea
/* Esto es un comentario multi-línea
y otra lína de comentarios */
echo 'Esto es otra prueba';
echo 'Una prueba final'; # Esto es un comentario estilo consola de una sola línea
?>
Los
comentarios del estilo "una sola línea" solo comentan hasta el final
de la línea o del bloque actual de código de PHP, lo primero que suceda. Esto
implica que el código HTML después de // ... ?> o # ... ?> SERÁ impreso:
?> sale del modo PHP y vuelve al modo HTML, por lo que // o # no pueden
influir en eso. Si la directiva de configuración asp_tags está activada, actúa
igual que // %> y # %>. Sin embargo, la etiqueta </script> no sale
del modo PHP en un comentario de una sola línea.
<h1>Esto es un <?php # echo 'simple';?> ejemplo</h1>
<p>El encabezado anterior dirá 'Esto es un ejemplo'.</p>
<p>El encabezado anterior dirá 'Esto es un ejemplo'.</p>
Los
comentarios al estilo 'C' finalizan con el primer */ que se encuentre.
Asegúrese de no anidar comentarios al estilo 'C'. Es muy fácil cometer este
error cuando se intenta comentar un bloque grande de código.
<?php
/*
echo 'Esto es una prueba'; /* Este comentario causará un problema*/
*/
?>
/*
echo 'Esto es una prueba'; /* Este comentario causará un problema*/
*/
?>







0 comentarios:
Publicar un comentario