Libre Configuración: PHP Francisco Martínez Ruiz
7
Estructura Condicional (If)
Cuando se pretende que el programa, una vez llegado a un cierto punto, tome un camino concreto
en determinados casos y otro diferente si las condiciones de ejecución difieren, se utiliza el conjunto
de instrucciones:
if, else y elseif. La estructura base de este tipo de instrucciones es la siguiente:
if (Condición)
{
Instrucción a1;
Instrucción a2;
}
else
{
Instrucción b1;
Instrucción b2;
}
Cuando la ejecución llega al punto donde se encuentra la instrucción if, el programa verificará el
cumplimiento o no de la condición. Si la condición es verdadera se ejecutarán las instrucciones a1 y
a2, de lo contrario, se ejecutarán las instrucciones b1 y b2.
En los casos en que las condiciones sean varias, se pueden utilizar los if de un modo denominado
anidado o anillado, como se indica de la manera siguiente:
if (Condicion 1)
{
Instrucción a1;
Instrucción a2;
}
else
{
if (Condicion 2)
{
Instrucción b1;
Instrucción b2;
}
else
{
Instrucción c1;
Instrucción c2;
}
}
De este modo se pueden introducir tantas condiciones como se quiera dentro de la condición
principal. Una variante de este sistema es utilizando la sentencia elseif, que permite en una sola
línea introducir una condición adicional:
I.E.S. Jándula (Andújar)
Libre Configuración: PHP Francisco Martínez Ruiz
if (Condicion 1)
{
Instrucción a1;
Instrucción a2;
}
elseif (Condicion 2)
{
Instrucción b1;
Instrucción b2;
}
else
{
Instrucción c1;
Instrucción c2;
}
Para las condiciones tener en cuenta que disponemos de los siguientes operadores:
== para ver si una variable es igual a otra.
!= distinto.
>= mayor o igual.
> mayor.
<<= menor o igual
< menor
La mejor forma de entender esta estructura condicional es por medio de ejemplos. El primero que
nos plantearemos es generar un valor aleatorio (es decir lo elige la máquina al azar, como extraer
una bolilla de un bolillero de lotería) comprendido entre 1 y 10. Luego mostraremos un mensaje si
es menor o igual a 5 o si es mayor a 5.
El programa completo es:
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$valor=rand(1,10);
echo "El valor sorteado es $valor<br>";
if ($valor<=5)
{
echo "Es menor o igual a 5";
}
else
{
echo "Es mayor a 5";
}
?>
</body>
</html>
Es importante recordar que siempre la condición del if debe ir entre paréntesis. Si la condición del if
se verifica verdadera (es decir el número sorteado es menor o igual a 5) ejecuta el primer bloque
que se encuentra entre llaves. En caso de verificarse falsa la condición del if se ejecuta el bloque
I.E.S. Jándula (Andújar)
Libre Configuración: PHP Francisco Martínez Ruiz
entre llaves que se encuentra después del else.
El valor aleatorio lo generamos llamando a la función rand pasándole el valor mínimo y máximo:
$valor=rand(1,10);
Imprimimos el valor generado a los efectos de controlar el resultado:
echo "El valor sorteado es $valor<br>";
En el primer problema tenemos solo dos caminos posibles, el valor es menor o igual a cinco o es
mayor. En un segundo ejemplo mostraremos como disponer una estructura condicional if anidada.
El problema es el siguiente: Generar un valor aleatorio entre 1 y 100. Luego mostrar si tiene 1,2 o 3
dígitos.
Como podemos observar estamos en presencia de un problema que tiene tres caminos posibles. El
valor puede tener 1 dígito, 2 dígitos o 3 dígitos. Si pensamos un poco podremos identificar que para
que tenga un dígito debe generarse un valor entre 1 y 9, para que tenga dos dígitos deberá estar
comprendido entre 10 y 99, y finalmente para tener 3 dígitos deberá ser el valor 100.
La página con el programa respectivo es:
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$valor=rand(1,100);
echo "El valor sorteado es $valor<br>";
if ($valor<=9)
{
echo "Tiene un dígito";
}
else
{
if ($valor<100)
{
echo "Tiene 2 dígitos";
}
else
{
echo "Tiene 3 dígitos";
}
}
?>
</body>
</html>
Es importante notar como la segunda estructura if se encuentra contenida entre las llaves del else
del primer if. Es decir que si el valor aleatorio es menor o igual a 9 se ejecuta el bloque del
verdadero del primer if y no se ejecuta por lo tanto el if anidado en el else. Por el contrario si la
I.E.S. Jándula (Andújar)
Libre Configuración: PHP Francisco Martínez Ruiz
condición del primer if se verifica falsa se ejecuta el bloque del else del primer if, la misma contiene
una estructura if con sus bloques del verdadero y falso.
A modo ilustrativo el mismo ejemplo resuelto con la estructura if/elseif será:
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$valor=rand(1,100);
echo "El valor sorteado es $valor<br>";
if ($valor<=9)
{
echo "Tiene un dígito";
}
elseif ($valor<100)
{
echo "Tiene 2 dígitos";
}
else
{
echo "Tiene 3 dígitos";
}
?>
</body>
</html>
Si uno tiene mucha práctica con otros lenguajes de programación esta estructura de if anidados le
será mas adecuada, en caso que haya empezado a programar hace poco será conveniente que elija y
practique la primera forma.
Problema resuelto.
Copiar el contenido de este cuadro de texto al NotePad++ y grabarlo en la carpeta c:wampwww
con un nombre con extensión php (si hay varios cuadros de texto grabar cada uno en un archivo
distinto).
luego abrir el navegador (Chrome, FireFox, IExplorer etc.) y en la barra de direcciones tipear:
http://localhost/pagina1.php (o el nombre del archivo que le dió)
pagina1.php
I.E.S. Jándula (Andújar)
Libre Configuración: PHP Francisco Martínez Ruiz
Problema propuesto.
Generar un valor aleatorio entre 1 y 3. Luego imprimir en castellano el número (Ej. si se genera el 3
luego mostrar en la página el string "tres").
Para ver si una variable es igual a cierto valor debemos plantear una condición similar a:
if ($valor==3)
{
//algoritmo
}
I.E.S. Jándula (Andújar)
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
//Generar un valor aleatorio entre 1 y 100. Luego mostrar
//si tiene 1,2 o 3 dígitos.
$valor=rand(1,100);
echo "El valor sorteado es $valor<br>";
if ($valor<=9)
{
echo "Tiene un dígito";
}
else
{
if ($valor<100)
{
echo "Tiene 2 dígitos";
}
else
{
echo "Tiene 3 dígitos";
}
}
?>
</body>
</html>

Más contenido relacionado

PPTX
Java Basico
PDF
Curso php - capitulo 2
PPTX
Intro php
DOCX
Bucles de Control Repetitivo Ciclos For
PPTX
Estructura repetitiva for
PDF
Ejemplo C++
PPT
Python04
PPTX
Estructura repetitiva do while
Java Basico
Curso php - capitulo 2
Intro php
Bucles de Control Repetitivo Ciclos For
Estructura repetitiva for
Ejemplo C++
Python04
Estructura repetitiva do while

La actualidad más candente (20)

PPTX
Clase 2 Estructuras de Control
DOC
Guia de estructuras Condicionales
PPTX
Estructuras de seleccion
PPTX
Estructuras de control
DOCX
Guia 2nd o & 3er
PPTX
Power point progrmacion 2[1]
PPT
Introducción A Las Estructuras De Seleccion En C
DOC
Estructura Secuencial
PDF
Estructuras de Control en Lenguaje C
PDF
Estructuras de control
PPT
Estructuras de control en Java
PDF
Algoritmos secuenciales
PDF
Encriptacion y crackmes_en_batch_desde_0_by_xassiz
PPTX
Estructuras repetitivas for y while
DOC
Estructuras De RepeticióN
PDF
15 Curso de POO en java - estructuras repetitivas
PPSX
Estructuras de control selectivas
Clase 2 Estructuras de Control
Guia de estructuras Condicionales
Estructuras de seleccion
Estructuras de control
Guia 2nd o & 3er
Power point progrmacion 2[1]
Introducción A Las Estructuras De Seleccion En C
Estructura Secuencial
Estructuras de Control en Lenguaje C
Estructuras de control
Estructuras de control en Java
Algoritmos secuenciales
Encriptacion y crackmes_en_batch_desde_0_by_xassiz
Estructuras repetitivas for y while
Estructuras De RepeticióN
15 Curso de POO en java - estructuras repetitivas
Estructuras de control selectivas
Publicidad

Similar a 7. estructura condicional if (20)

PPT
Php
DOCX
Unidad 2
DOCX
Unidad 2
PPT
Python02
PDF
Curso php-my sql-clase-3
DOCX
PPT
Clase 5 php
DOCX
Codigo
PPTX
Resumen Java Script
PDF
Introducción a PHP - Programador PHP - UGR
PDF
Php04 estructuras control
PPTX
Java script
DOCX
Estructuras de control en php
PDF
Php informacion
PPTX
Mod2ud2 1
DOC
Manual de php basico
PDF
PPT
Módulo de PHP
PPTX
Phpablo
Php
Unidad 2
Unidad 2
Python02
Curso php-my sql-clase-3
Clase 5 php
Codigo
Resumen Java Script
Introducción a PHP - Programador PHP - UGR
Php04 estructuras control
Java script
Estructuras de control en php
Php informacion
Mod2ud2 1
Manual de php basico
Módulo de PHP
Phpablo
Publicidad

Último (20)

PDF
LIBRO 2-SALUD Y AMBIENTE-4TO CEBA avanzado.pdf
PDF
E1 Guía_Matemática_5°_grado.pdf paraguay
PDF
Aqui No Hay Reglas Hastings-Meyer Ccesa007.pdf
DOCX
TEXTO DE TRABAJO DE EDUCACION RELIGIOSA - CUARTO GRADO.docx
PPTX
4. Qué es un computador PARA GRADO CUARTO.pptx
PDF
Manual del Gobierno Escolar -MINEDUC.pdf
PDF
RM2025 - FUNDAMENTOS TEÓRICOS - PEDIATRÍA.pdf
DOC
4°_GRADO_-_SESIONES_DEL_11_AL_15_DE_AGOSTO.doc
PPTX
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
PDF
MODULO I ENFERMERIA BASICA.pdf HIstoria en enfermeria
PDF
Aumente su Autoestima - Lair Ribeiro Ccesa007.pdf
DOCX
PLANES DE área ciencias naturales y aplicadas
PDF
Como Potenciar las Emociones Positivas y Afrontar las Negativas Ccesa007.pdf
PDF
Iniciación Al Aprendizaje Basado En Proyectos ABP Ccesa007.pdf
PDF
Nadie puede salvarte excepto Tú - Madame Rouge Ccesa007.pdf
PDF
Los hombres son de Marte - Las mujeres de Venus Ccesa007.pdf
PDF
ciencia_tecnologia_sociedad Mitcham Carl. (1994)..pdf
PDF
MATERIAL DIDÁCTICO 2023 SELECCIÓN 1_REFORZAMIENTO 1° BIMESTRE_COM.pdf
PDF
CURRICULAR DE PRIMARIA santa ursula..pdf
PPTX
Clase 3 del silabo-gestion y control financiero
LIBRO 2-SALUD Y AMBIENTE-4TO CEBA avanzado.pdf
E1 Guía_Matemática_5°_grado.pdf paraguay
Aqui No Hay Reglas Hastings-Meyer Ccesa007.pdf
TEXTO DE TRABAJO DE EDUCACION RELIGIOSA - CUARTO GRADO.docx
4. Qué es un computador PARA GRADO CUARTO.pptx
Manual del Gobierno Escolar -MINEDUC.pdf
RM2025 - FUNDAMENTOS TEÓRICOS - PEDIATRÍA.pdf
4°_GRADO_-_SESIONES_DEL_11_AL_15_DE_AGOSTO.doc
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
MODULO I ENFERMERIA BASICA.pdf HIstoria en enfermeria
Aumente su Autoestima - Lair Ribeiro Ccesa007.pdf
PLANES DE área ciencias naturales y aplicadas
Como Potenciar las Emociones Positivas y Afrontar las Negativas Ccesa007.pdf
Iniciación Al Aprendizaje Basado En Proyectos ABP Ccesa007.pdf
Nadie puede salvarte excepto Tú - Madame Rouge Ccesa007.pdf
Los hombres son de Marte - Las mujeres de Venus Ccesa007.pdf
ciencia_tecnologia_sociedad Mitcham Carl. (1994)..pdf
MATERIAL DIDÁCTICO 2023 SELECCIÓN 1_REFORZAMIENTO 1° BIMESTRE_COM.pdf
CURRICULAR DE PRIMARIA santa ursula..pdf
Clase 3 del silabo-gestion y control financiero

7. estructura condicional if

  • 1. Libre Configuración: PHP Francisco Martínez Ruiz 7 Estructura Condicional (If) Cuando se pretende que el programa, una vez llegado a un cierto punto, tome un camino concreto en determinados casos y otro diferente si las condiciones de ejecución difieren, se utiliza el conjunto de instrucciones: if, else y elseif. La estructura base de este tipo de instrucciones es la siguiente: if (Condición) { Instrucción a1; Instrucción a2; } else { Instrucción b1; Instrucción b2; } Cuando la ejecución llega al punto donde se encuentra la instrucción if, el programa verificará el cumplimiento o no de la condición. Si la condición es verdadera se ejecutarán las instrucciones a1 y a2, de lo contrario, se ejecutarán las instrucciones b1 y b2. En los casos en que las condiciones sean varias, se pueden utilizar los if de un modo denominado anidado o anillado, como se indica de la manera siguiente: if (Condicion 1) { Instrucción a1; Instrucción a2; } else { if (Condicion 2) { Instrucción b1; Instrucción b2; } else { Instrucción c1; Instrucción c2; } } De este modo se pueden introducir tantas condiciones como se quiera dentro de la condición principal. Una variante de este sistema es utilizando la sentencia elseif, que permite en una sola línea introducir una condición adicional: I.E.S. Jándula (Andújar)
  • 2. Libre Configuración: PHP Francisco Martínez Ruiz if (Condicion 1) { Instrucción a1; Instrucción a2; } elseif (Condicion 2) { Instrucción b1; Instrucción b2; } else { Instrucción c1; Instrucción c2; } Para las condiciones tener en cuenta que disponemos de los siguientes operadores: == para ver si una variable es igual a otra. != distinto. >= mayor o igual. > mayor. <<= menor o igual < menor La mejor forma de entender esta estructura condicional es por medio de ejemplos. El primero que nos plantearemos es generar un valor aleatorio (es decir lo elige la máquina al azar, como extraer una bolilla de un bolillero de lotería) comprendido entre 1 y 10. Luego mostraremos un mensaje si es menor o igual a 5 o si es mayor a 5. El programa completo es: <html> <head> <title>Problema</title> </head> <body> <?php $valor=rand(1,10); echo "El valor sorteado es $valor<br>"; if ($valor<=5) { echo "Es menor o igual a 5"; } else { echo "Es mayor a 5"; } ?> </body> </html> Es importante recordar que siempre la condición del if debe ir entre paréntesis. Si la condición del if se verifica verdadera (es decir el número sorteado es menor o igual a 5) ejecuta el primer bloque que se encuentra entre llaves. En caso de verificarse falsa la condición del if se ejecuta el bloque I.E.S. Jándula (Andújar)
  • 3. Libre Configuración: PHP Francisco Martínez Ruiz entre llaves que se encuentra después del else. El valor aleatorio lo generamos llamando a la función rand pasándole el valor mínimo y máximo: $valor=rand(1,10); Imprimimos el valor generado a los efectos de controlar el resultado: echo "El valor sorteado es $valor<br>"; En el primer problema tenemos solo dos caminos posibles, el valor es menor o igual a cinco o es mayor. En un segundo ejemplo mostraremos como disponer una estructura condicional if anidada. El problema es el siguiente: Generar un valor aleatorio entre 1 y 100. Luego mostrar si tiene 1,2 o 3 dígitos. Como podemos observar estamos en presencia de un problema que tiene tres caminos posibles. El valor puede tener 1 dígito, 2 dígitos o 3 dígitos. Si pensamos un poco podremos identificar que para que tenga un dígito debe generarse un valor entre 1 y 9, para que tenga dos dígitos deberá estar comprendido entre 10 y 99, y finalmente para tener 3 dígitos deberá ser el valor 100. La página con el programa respectivo es: <html> <head> <title>Problema</title> </head> <body> <?php $valor=rand(1,100); echo "El valor sorteado es $valor<br>"; if ($valor<=9) { echo "Tiene un dígito"; } else { if ($valor<100) { echo "Tiene 2 dígitos"; } else { echo "Tiene 3 dígitos"; } } ?> </body> </html> Es importante notar como la segunda estructura if se encuentra contenida entre las llaves del else del primer if. Es decir que si el valor aleatorio es menor o igual a 9 se ejecuta el bloque del verdadero del primer if y no se ejecuta por lo tanto el if anidado en el else. Por el contrario si la I.E.S. Jándula (Andújar)
  • 4. Libre Configuración: PHP Francisco Martínez Ruiz condición del primer if se verifica falsa se ejecuta el bloque del else del primer if, la misma contiene una estructura if con sus bloques del verdadero y falso. A modo ilustrativo el mismo ejemplo resuelto con la estructura if/elseif será: <html> <head> <title>Problema</title> </head> <body> <?php $valor=rand(1,100); echo "El valor sorteado es $valor<br>"; if ($valor<=9) { echo "Tiene un dígito"; } elseif ($valor<100) { echo "Tiene 2 dígitos"; } else { echo "Tiene 3 dígitos"; } ?> </body> </html> Si uno tiene mucha práctica con otros lenguajes de programación esta estructura de if anidados le será mas adecuada, en caso que haya empezado a programar hace poco será conveniente que elija y practique la primera forma. Problema resuelto. Copiar el contenido de este cuadro de texto al NotePad++ y grabarlo en la carpeta c:wampwww con un nombre con extensión php (si hay varios cuadros de texto grabar cada uno en un archivo distinto). luego abrir el navegador (Chrome, FireFox, IExplorer etc.) y en la barra de direcciones tipear: http://localhost/pagina1.php (o el nombre del archivo que le dió) pagina1.php I.E.S. Jándula (Andújar)
  • 5. Libre Configuración: PHP Francisco Martínez Ruiz Problema propuesto. Generar un valor aleatorio entre 1 y 3. Luego imprimir en castellano el número (Ej. si se genera el 3 luego mostrar en la página el string "tres"). Para ver si una variable es igual a cierto valor debemos plantear una condición similar a: if ($valor==3) { //algoritmo } I.E.S. Jándula (Andújar) <html> <head> <title>Problema</title> </head> <body> <?php //Generar un valor aleatorio entre 1 y 100. Luego mostrar //si tiene 1,2 o 3 dígitos. $valor=rand(1,100); echo "El valor sorteado es $valor<br>"; if ($valor<=9) { echo "Tiene un dígito"; } else { if ($valor<100) { echo "Tiene 2 dígitos"; } else { echo "Tiene 3 dígitos"; } } ?> </body> </html>