20 EJERCICIOS BÁSICOS DE PHP #2

Ejercicios de PHP, aprende los conceptos básicos de PHP con esta segunda serie de ejercicios resueltos. (21 - 40)




  • Ejercicio 21.- Crea un programa que imprima la fecha y hora actual del servidor.
<!DOCTYPE html>
<html>
<body>
<?php

$fecha = date("d-m-Y");
$hora = date("H:i:s");

echo "Hora de servidor<br>";
echo "La fecha actual es: $fecha <br>";
echo "La hora actual es: $hora";

?>

</body>
</html>
  • Ejercicio 22.- Crea un programa que imprima la fecha y hora actual de la zona horaria America/Lima.
<!DOCTYPE html>
<html>
<body>

<?php
date_default_timezone_set("America/Lima");
$fecha = date("d-m-Y");
$hora = date("H:i:s");

echo "Hora de America/Lima<br>";
echo "La fecha actual es: $fecha <br>";
echo "La hora actual es: $hora";

?>

</body>
</html>
  • Ejercicio 23.- Crea un programa que permita seleccionar una zona horaria e imprima la fecha y hora actual.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <select name="zona_horaria">
            <option value="America/Lima">Lima, Perú</option>
            <option value="America/New_York">Nueva York, Estados Unidos</option>
            <option value="Europe/London">Londres, Reino Unido</option>
            <option value="America/Mexico_City">Ciudad de México, México</option>
            <option value="Asia/Tokyo">Tokio, Japón</option>
            <option value="Africa/Cairo">El Cairo, Egipto</option>
        </select>
        <input type="submit" value="Enviar">
    </form>
</body>
<?php

if (isset($_POST["zona_horaria"])) {
    $zona_horaria = $_POST["zona_horaria"];

    if (!in_array($zona_horaria, timezone_identifiers_list())) {
        echo "La zona horaria seleccionada no es válida.";
        exit;
    }


date_default_timezone_set($zona_horaria);

$fecha = date("d-m-Y");
$hora = date("H:i:s");

echo "<br>Hora de $zona_horaria <br>";
echo "La fecha actual es: $fecha <br>";
echo "La hora actual es: $hora";

}
?>
</html>
  • Ejercicio 24.- Crea un programa que permita convertir un número a un string y viceversa.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="numero">Número:</label>
        <input type="number" name="numero" id="numero">
        <input type="submit" value="Convertir">
    </form>
</body>
<?php

if (isset($_POST["numero"])) {
    $numero = $_POST["numero"];

    // Convertir número a string
    $string = strval($numero);

    // Convertir string a número
    $numero_convertido = intval($string);

    echo "Número original: $numero";
    echo "<br>";
    echo "String: $string";
    echo "<br>";
    echo "Número convertido: $numero_convertido";
}

?>
</html>
  • Ejercicio 25.- Imprimir un saludo personalizado.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="nombre">Nombre:</label>
        <input type="text" name="nombre" id="nombre">
        <input type="submit" value="Enviar">
    </form>
</body>
<?php

if (isset($_POST["nombre"])) {
    $nombre = $_POST["nombre"];

    echo "Hola, $nombre. ¿Cómo estás?";
}

?>
</html>
  • Ejercicio 26.- Comprobar si una frase contiene una palabra determinada. Por ejemplo, Si ingresamos la frase "Estoy aprendiendo a programar" en el formulario y la palabra "programar" en el otro campo, el programa imprimirá el siguiente resultado: Contiene la palabra 'programar'.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="string">Ingresa una frase:</label>
        <input type="text" name="string" id="string">
        <label for="palabra">Buscar la palabra:</label>
        <input type="text" name="palabra" id="palabra">
        <input type="submit" value="Comprobar">
    </form>
</body>
<?php

if (isset($_POST["string"])) {
    $string = $_POST["string"];
    $palabra = $_POST["palabra"];

    $resultado = strpos($string, $palabra);
	echo "La frase: $string <br>";
    if ($resultado !== false) {
        echo "Contiene la palabra '$palabra'.";
    } else {
        echo "No contiene la palabra '$palabra'.";
    }
}

?>
</html>
  • Ejercicio 27.- Eliminar espacios en blanco de un string.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="string">String:</label>
        <input type="text" name="string" id="string">
        <input type="submit" value="Eliminar espacios">
    </form>
</body>
<?php

if (isset($_POST["string"])) {
    $string = $_POST["string"];

    // Eliminar espacios en blanco
    $string_sin_espacios = str_replace(" ", "", $string);

    echo "String original: $string";
    echo "<br>";
    echo "String sin espacios: $string_sin_espacios";
}

?>
</html>
  • Ejercicio 28.- Concatenar dos strings.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="string1">String 1:</label>
        <input type="text" name="string1" id="string1">
        <label for="string2">String 2:</label>
        <input type="text" name="string2" id="string2">
        <input type="submit" value="Concatenar">
    </form>
</body>
<?php

if (isset($_POST["string1"])) {
    $string1 = $_POST["string1"];
    $string2 = $_POST["string2"];

    // Concatenar los strings
    $string_concatenado = $string1 . $string2;

    echo "String 1: $string1";
    echo "<br>";
    echo "String 2: $string2";
    echo "<br>";
    echo "String concatenado: $string_concatenado";
}

?>
</html>
  • Ejercicio 29.- Contar el número de veces que aparece una letra en un string.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="string">String:</label>
        <input type="text" name="string" id="string">
        <label for="letra">Letra:</label>
        <input type="text" name="letra" id="letra">
        <input type="submit" value="Contar">
    </form>
</body>
<?php

if (isset($_POST["string"])) {
    $string = $_POST["string"];
    $letra = $_POST["letra"];

    $numero_apariciones = substr_count($string, $letra);

    echo "String: $string";
    echo "<br>";
    echo "Letra: $letra";
    echo "<br>";
    echo "Número de apariciones: $numero_apariciones";
}

?>
</html>
  • Ejercicio 30.- Escribe un programa que compara dos strings ingresados por el teclado.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="string1">String 1:</label>
        <input type="text" name="string1" id="string1">
        <label for="string2">String 2:</label>
        <input type="text" name="string2" id="string2">
        <input type="submit" value="Comparar">
    </form>
</body>
<?php

if (isset($_POST["string1"])) {
    $string1 = $_POST["string1"];
    $string2 = $_POST["string2"];

    // Comparar los strings
    $resultado = strcmp($string1, $string2);
	
	echo "String 1: $string1 <br>";
	echo "String 2: $string2 <br>";

    // Imprimir el resultado de la comparación
    if ($resultado == 0) {
        echo "Los strings son iguales.";
    } else if ($resultado < 0) {
        echo "El primer string es menor que el segundo.";
    } else {
        echo "El primer string es mayor que el segundo.";
    }
}

?>
</html>
  • Ejercicio 31.- Crea un programa que calcule el número de días entre dos fechas ingresados por el teclado.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="fecha1">Fecha 1:</label>
        <input type="date" name="fecha1" id="fecha1">
        <label for="fecha2">Fecha 2:</label>
        <input type="date" name="fecha2" id="fecha2">
        <input type="submit" value="Calcular">
    </form>
</body>
<?php

if (isset($_POST["fecha1"])) 
{
    $fecha1 = $_POST["fecha1"];
    $fecha2 = $_POST["fecha2"];

    $fecha1_objeto = new DateTime($fecha1);
    $fecha2_objeto = new DateTime($fecha2);

    // Calcular la diferencia entre las dos fechas
    $diferencia = $fecha2_objeto->diff($fecha1_objeto);

    // Obtener el número de días de la diferencia
    $numero_dias = $diferencia->days;

    // Resultado
    echo "El número de días entre las dos fechas es: $numero_dias";
}

?>
</html>
  • Ejercicio 32.- Crea un programa que imprima "Es verano" si la fecha ingresado por teclado es mayor o igual al 21 de junio y menor o igual al 21 de septiembre.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="fecha">Fecha:</label>
        <input type="date" name="fecha" id="fecha">
        <input type="submit" value="Comprobar">
    </form>
</body>
<?php

if (isset($_POST["fecha"])) 
{
    $fecha = $_POST["fecha"];

    // Convertir la fecha a un objeto DateTime
    $fecha_objeto = new DateTime($fecha);

    // Obtener el mes de la fecha
    $mes = $fecha_objeto->format("m");

    // Comprobar si la fecha es verano
    if ($mes >= 6 && $mes <= 9) {
        echo "Es verano";
    } else {
        echo "No es verano";
    }
}

?>
</html>
  • Ejercicio 33.- Escribe un programa que imprima "es fin de semana" si la fecha seleccionada es sábado o domingo.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="fecha">Fecha:</label>
        <input type="date" name="fecha" id="fecha">
        <input type="submit" value="Comprobar">
    </form>
</body>
<?php

if (isset($_POST["fecha"])) 
{
    $fecha = $_POST["fecha"];

    $fecha_objeto = new DateTime($fecha);

    // Obtener el día de la semana de la fecha
    $dia_semana = $fecha_objeto->format("w");

    // Comprobar si la fecha es fin de semana
    if ($dia_semana == 0 || $dia_semana == 6) {
        echo " $fecha - Es fin de semana";
    } else {
        echo " $fecha - No es fin de semana";
    }
}

?>
</html>
  • Ejercicio 34 .- Escribe un programa que imprima "El número es perfecto" si el número introducido por el usuario es un número perfecto, o "El número no es perfecto" si no lo es.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="numero">Número:</label>
        <input type="number" name="numero" id="numero">
        <input type="submit" value="Comprobar">
    </form>
</body>
<?php

if (isset($_POST["numero"])) {
    $numero = $_POST["numero"];

    // Comprobar si el número es perfecto
    $es_perfecto = true;
    for ($i = 1; $i <= $numero / 2; $i++) {
        if ($numero % $i != 0) {
            $es_perfecto = false;
            break;
        }
    }

    // Imprimir el resultado
    if ($es_perfecto) {
        echo "El número $numero es perfecto";
    } else {
        echo "El número $numero no es perfecto";
    }
}

?>
</html>
  • Ejercicio 35.- Escribir un programa en PHP que lea una fecha y un número de días y calcule la fecha que resulta de sumarle el número de días a la fecha introducida.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="fecha">Fecha:</label>
        <input type="date" name="fecha" id="fecha">
        <label for="dias">Número de días:</label>
        <input type="number" name="dias" id="dias">
        <input type="submit" value="Calcular">
    </form>
</body>
<?php

if (isset($_POST["fecha"])) 
{
    $fecha = $_POST["fecha"];
    $dias = $_POST["dias"];

    // Convertir la fecha a un objeto DateTime
    $fecha_objeto = new DateTime($fecha);

    // Sumar los días a la fecha
    $fecha_objeto->add(new DateInterval("P{$dias}D"));

    // Obtener la fecha resultante
    $fecha_resultante = $fecha_objeto->format("Y-m-d");

    // Imprimir la fecha resultante
	echo "La fecha seleccionada es: $fecha <br>";
	echo "Días ingresados: $dias <br>";
    echo "La fecha resultante es: $fecha_resultante";
}

?>
</html>
  • Ejercicio 36.- Escribe un programa en PHP que imprima los números del 1 al 100, de dos en dos.
<?php

for ($i = 1; $i <= 100; $i += 2) {
    echo $i . " ";
}

?>
  • Ejercicio 37.- Escribe un programa en PHP que lea un número del usuario y luego imprima los números pares del 1 al número introducido, uno por línea.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="numero">Número:</label>
        <input type="number" name="numero" id="numero">
        <input type="submit" value="Calcular">
    </form>
</body>
<?php

if (isset($_POST["numero"])) {
    $numero = $_POST["numero"];

    // Imprimir los números pares
    for ($i = 2; $i <= $numero; $i += 2) {
        echo $i . "<br>";
    }
}

?>
</html>
  • Ejercicio 38.- Escribir un programa en PHP que imprima un triángulo equilátero de asteriscos.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="altura">Altura:</label>
        <input type="number" name="altura" id="altura">
        <input type="submit" value="Calcular">
    </form>
</body>
<?php

if (isset($_POST["altura"])) 
{
 $altura = $_POST["altura"];
 
for ($x = 1; $x <= $altura; $x++) 
{
    for ($y = $altura - $x; $y >0; $y--) 
	{
        echo "&nbsp;&nbsp;";
    } 
	for ($y = 1; $y < $x; $y++)
	{
		echo "**";
	}
	echo "*";
    echo "<br>";
}
}
?>
</html>
  • Ejercicio 39.- Escribir un programa en PHP que muestre una lista de países en un menú desplegable y permita seleccionar un país.
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="pais">País:</label>
        <select name="pais" id="pais">
            <option value="">Seleccione un país</option>
            <option value="peru">Perú</option>
            <option value="argentina">Argentina</option>
            <option value="brasil">Brasil</option>
            <option value="chile">Chile</option>
            <option value="colombia">Colombia</option>
            <option value="ecuador">Ecuador</option>
            <option value="mexico">México</option>
            <option value="venezuela">Venezuela</option>
        </select>
        <input type="submit" value="Calcular">
    </form>
</body>
<?php

// Obtener el país seleccionado
if (isset($_POST["pais"])) 
{
    $pais_seleccionado = $_POST["pais"];
} else {
    $pais_seleccionado = "";
}

// Imprimir el país seleccionado
if ($pais_seleccionado != "") {
    echo "El país seleccionado es: $pais_seleccionado";
} else {
    echo "No se ha seleccionado ningún país";
}

?>
</html>
  • Ejercicio 40.- Escribir un programa en PHP que imprima una lista de colores y una lista de números del 1 al 99 y que permita juntar lo seleccionado en las dos listas al presionar un botón.
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="" method="post">
        <label for="color">Seleccionar un Color:</label>
        <select name="color" id="color">
            <option value="">Color</option>
            <option value="rojo">Rojo</option>
            <option value="verde">Verde</option>
            <option value="azul">Azul</option>
            <option value="amarillo">Amarillo</option>
            <option value="negro">Negro</option>
            <option value="blanco">Blanco</option>
        </select>
        <br>
        <label for="numero">Ingresa un número:</label>
        <input type="number" name="numero" id="numero" min="1" max="99">
        <br>
        <input type="submit" value="Juntar">
    </form>
</body>
<?php

// Obtener el color seleccionado
if (isset($_POST["color"])) 
{
    $color_seleccionado = $_POST["color"];
} else {
    $color_seleccionado = "";
}

// Obtener el número seleccionado
if (isset($_POST["numero"])) 
{
    $numero_seleccionado = $_POST["numero"];
} else {
    $numero_seleccionado = "";
}

// Juntar las listas
if ($color_seleccionado != "" && $numero_seleccionado != "") {
    echo "<h3>Lista juntada</h3>";
    echo "$color_seleccionado:$numero_seleccionado";
}

?>
</html>

Excelente.



El archivo es una carpeta con los 20 ejercicios.
1.- Debes de moverlo a la carpeta www del Wampserver64 o XAMPP
2.- Activar el Wampserver64 o XAMPP Apache.
3.- Abrir un navegador.
4.- Usar la dirección localhost
5.- Seleccionar el archivo del ejercicio.

  • Nombre: 20EjerciciosPHP2.rar
  • Tamaño: 9 KB

 Descargar