ESTRUCTURAS
DE CONTROL EN PHP. Parte 1 (IF)
Como ya se explicó con anterioridad, cada
archivo de comandos PHP se compone de una serie de sentencias. La
sentencia puede ser una asignación, una llamada a una función
(calma, las funciones vienen en camino en una entrega posterior),
una sentencia condicional, etc. Por favor recuerden que cada sentencia
termina con el punto y coma (;), lo que significa que si dicho símbolo
no se escribe al final de cada sentencia, PHP hará de cuenta
que la sentencia no ha terminado hasta que un punto y coma sea encontrado.
Los resultados de omitir un punto y coma van desde los más
leves e insignificantes, hasta los más catastróficos,
desesperantes y estresantes (enfermedad de moda en nuestros tiempos,
además de casi inevitable), que se puedan imaginar, así
que por favor, no olviden de finalizar cada sentencia con un punto
y coma. Por otro lado, también es necesario mencionar que las
sentencias pueden ser agrupadas en grupos de sentencias, que estarán
encerradas dentro de llaves { }. Por consiguiente, un grupo de sentencias
encerradas en llaves, son en realidad, una sola sentencia. En esta
entrega, veremos los diferentes tipos de sentencias que pueden haber
en un programa PHP:
IF
"Si
me gustan los chocolates, me los como"
Una de las estructuras de control más básicas,
y sin embargo una de las más importantes, es la estructura
if. Dicha estructura evalúa el valor de una
expresión y dependiendo de si la evaluación resulta
verdadera o falsa, la sentencia a continuación de if se ejecutará
o se ignorará.
La sintaxis es la siguiente:
if(expr1)
sentencia
Así, si tenemos el siguiente fragmento de
código:
<?php
$a = 1;
$b = 3;
if($a < $b)
echo "$a es menor que $b";
?>
El resultado en pantalla sería el siguiente:

Dado que 1 (valor de $a) es decididamente menor que
3 (el valor de $b), la sentencia echo "$a es menor que $b"
se imprime en la pantalla de nuestro navegador de Internet. Si el caso
hubiese sido que el valor de $a hubiese sido, por ejemplo 5, el navegador
simplemente nos hubiese mostrado una pantalla vacía.
Por favor observen que al final de la sentencia que
contiene el IF, NO hay un punto y coma. Por favor tengan
en cuenta que si ponen un punto y coma al final de la línea de
código que contiene el IF, dicha sentencia, si bien se ejecutará,
tendrá un defecto de sintaxis que puede llegar a ser peligroso
en caso de un programa verdaderamente grande.
La instrucción echo, como ya se explicó
anteriormente proporciona una salida en pantalla de todo lo que esté
dentro de las comillas dobles (" "), por lo que es importante
observar cuidadosamente el resultado de nuestro código. Si se
dan cuenta la sentencia de impresión (o de salida a pantalla)
dice echo "$a es menor que $b", pero el resultado
en pantalla dice 1 es menor que 3. Lo anterior implica
que, cuando imprimimos variables dentro de una instrucción echo,
incluso cuando las variables están incluidas dentro de las comillas,
lo que se imprimirá en pantalla será el valor de dicha
variable y no la cadena de caracteres que implica dicha variable, en
nuestro ejemplo serían las cadenas "$a" y "$b".
Si nuestro deseo es imprimir las cadenas de caracteres mencionadas,
entonces debemos utilizar la instrucción de impresión
de caracteres especiales \. En otras palabras, la instrucción
debería ser echo "\$a es menor que \$b";
Con las correcciones anteriores, el resultado sería el siguiente:

Como resulta claro, el operador \, hace que el carácter especial
$ se imprima en pantalla.
Por otro lado, la maoyría de las veces, necesitaremos
agrupar más de una sentencia, dentro de la sentencia IF. Si ese
fuese el caso, debemos de tener en cuenta que después del primer
punto y coma, la sentencia IF se acaba, por ello, para encerrar a varias
sentencias, dentro de la sentencia IF, debemos utilizar las llaves {
} para encerrar a todas las sentencias que deseemos que estén
dentro de nuestra estructura de control IF, de la siguiente forma:
<?php
$a = 1;
$b = 3;
if($a < $b){
echo "\$a es menor que\ $b<BR>";
echo "El valor de \$a es $a
y el de \$b es $b";
}
?>
Para el ejemplo anterior, el resultado en pantalla sería el
siguiente:

Así pués, por favor recuerden de encerrar entre llaves
las sentencias que han de ir dentro de una sola sentencia IF.
Esto es todo en cuanto a IF, al menos por el momento. En la siguiente
entrega veremos algo sobre su complemento perfecto, es decir la sentencia
ELSE.
Por el momento, ¡Salud, Dinero y Amor! y hasta pronto.