From ca27b6acf6c07081b4ea3c68db0c6b7ffadf73b9 Mon Sep 17 00:00:00 2001 From: Marcos Lopez Date: Wed, 7 Feb 2024 13:53:21 +0100 Subject: [PATCH] Clases PHP --- .vscode/launch.json | 48 ++++ .../codigo/INTRO3_PHP_CONDICIONALES.php | 84 ++++++ .../ejercicios/EJERCICIO1_PHP.php | 142 +++++----- .../ejercicios/EJERCICIO2_PHP.php | 112 ++++++++ .../ejercicios/Ejercicio1_04.php | 80 +++--- .../ejercicios/Ejercicio2_04.php | 110 ++++++++ .../ejercicios/Ejercicio3_04.php | 244 ++++++++++++++++++ Practicas/Practicas_PHP/ejercicios/index.php | 3 - 8 files changed, 713 insertions(+), 110 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 Practicas/Practicas_PHP/codigo/INTRO3_PHP_CONDICIONALES.php create mode 100644 Practicas/Practicas_PHP/ejercicios/EJERCICIO2_PHP.php create mode 100644 Practicas/Practicas_PHP/ejercicios/Ejercicio2_04.php create mode 100644 Practicas/Practicas_PHP/ejercicios/Ejercicio3_04.php delete mode 100755 Practicas/Practicas_PHP/ejercicios/index.php diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..fbf5c9a --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,48 @@ +{ + // Use IntelliSense para saber los atributos posibles. + // Mantenga el puntero para ver las descripciones de los existentes atributos. + // Para más información, visite: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Listen for Xdebug", + "type": "php", + "request": "launch", + "port": 9003 + }, + { + "name": "Launch currently open script", + "type": "php", + "request": "launch", + "program": "${file}", + "cwd": "${fileDirname}", + "port": 0, + "runtimeArgs": [ + "-dxdebug.start_with_request=yes" + ], + "env": { + "XDEBUG_MODE": "debug,develop", + "XDEBUG_CONFIG": "client_port=${port}" + } + }, + { + "name": "Launch Built-in web server", + "type": "php", + "request": "launch", + "runtimeArgs": [ + "-dxdebug.mode=debug", + "-dxdebug.start_with_request=yes", + "-S", + "localhost:0" + ], + "program": "", + "cwd": "${workspaceRoot}", + "port": 9003, + "serverReadyAction": { + "pattern": "Development Server \\(http://localhost:([0-9]+)\\) started", + "uriFormat": "http://localhost:%s", + "action": "openExternally" + } + } + ] +} \ No newline at end of file diff --git a/Practicas/Practicas_PHP/codigo/INTRO3_PHP_CONDICIONALES.php b/Practicas/Practicas_PHP/codigo/INTRO3_PHP_CONDICIONALES.php new file mode 100644 index 0000000..1c82c1d --- /dev/null +++ b/Practicas/Practicas_PHP/codigo/INTRO3_PHP_CONDICIONALES.php @@ -0,0 +1,84 @@ + + + + +Intro3 PHP + + +

Condicionales

+ es mayor que if (1 > 0) + < es menor que if (1 < 0) + && y if (1 > 0 && 67 > 0) + || o if (1 > 10 || 67 > 0) + ! no if (!(1 > 0)) + == es igual en valor if ('3' == 3) + === es igual en valor y tipo if ('3' === '3') + != no es igual if ('Doctor' != 'Who') + !== no es igual en valor o tipo if ('Doctor' !== 'Who') + >= es mayor o igual que if (10 >= 10) + <= es menor o igual que if (10 <= 20) + <=> -1, 0 y 1 dependiendo de los valores si son superados (10 <=> 20) // 1 + True Verdad if (True) + False Falso if (False) + */ + if (10 > 2 && True && 'PACO' != 'PEDRO') { + echo 'Entro seguro'; + } + echo '
'; + //else + //if ('Ghibli' == 'Ghibli') {echo 'Bienvenido'} else {echo 'No eres bien recibido'} + if ('Ghibli' == 'Ghibli') { + echo 'Bienvenido'; + } else { + echo 'No eres bien recibido'; + } + echo '
'; + //if (condición1) { ... } elseif (condición2){ ... } } else { ... } + //Operador ternario ? : + // SI SI NO + // (condicional) ? 'Valor si se cumple' : 'Valor si no se cumple'; + /*Estructura */ + echo (5 > 10) ? 'Es verdad' : 'Es mentira'; + echo '
'; + //Switch + $num=2; + switch ($num) { + case 0: + echo "num es igual a 0"; + break; + case 1: + echo "num es igual a 1"; + break; + case 2: + echo "num es igual a 2"; + break; + default: + echo "No se a que es igual"; + break; + } + echo '
'; + //Condiciones con strings + //str_contains (¿Contiene este texto este otro texto?) + if (str_contains('La duda es uno de los nombres de la inteligencia', 'duda')) { + echo 'Si está contenido'; + } + //str_starts_with (¿Empieza este texto con este otro texto?) + //str_end_with (¿Termina este texto con este otro texto?) + + //Rand uso aleatorio + //rand( int $min , int $max ) + + echo '
'; + echo rand(), "\n"; + echo '
'; + echo rand(), "\n"; + echo '
'; + echo rand(1,6), "\n"; + ?> + + + diff --git a/Practicas/Practicas_PHP/ejercicios/EJERCICIO1_PHP.php b/Practicas/Practicas_PHP/ejercicios/EJERCICIO1_PHP.php index f7101f8..88141e4 100755 --- a/Practicas/Practicas_PHP/ejercicios/EJERCICIO1_PHP.php +++ b/Practicas/Practicas_PHP/ejercicios/EJERCICIO1_PHP.php @@ -1,78 +1,80 @@ + - -EJERCICIO1 PHP + + EJERCICIO1 PHP + -

1.

- -

2.

- '; - echo "Soy $nombre y tengo $edad años"; - ?> -

3.

- '; - echo 'El área de una esfera de 4 metros de radio es '.round(areaEsfera(4),2).' metros cuadrados.'; - ?> -

4.

- '; - echo $frase; - ?> -

5.

- -

6.

- 1. + +

2.

+ '; + echo "Soy $nombre y tengo $edad años"; + ?> +

3.

+ '; + echo 'El área de una esfera de 4 metros de radio es ' . round(areaEsfera(4), 2) . ' metros cuadrados.'; + ?> +

4.

+ '; + echo $frase; + ?> +

5.

+ +

6.

+ -

7.

- +

7.

+ 47435597,'Portugal'=>10352042,'Francia'=>67407241,'Italia'=>59853482,'Grecia'=>11086406]; - arsort($paises); - var_dump($paises); - echo '
'; - echo '
    '; - foreach ($paises as $key=>$val) { - echo "
  1. $key = $val
  2. "; - } - echo '
'; - - ?> - - + $paises = ['España' => 47435597, 'Portugal' => 10352042, 'Francia' => 67407241, 'Italia' => 59853482, 'Grecia' => 11086406]; + arsort($paises); + var_dump($paises); + echo '
'; + echo '
    '; + foreach ($paises as $key => $val) { + echo "
  1. $key = $val
  2. "; + } + echo '
'; + + ?> + + + \ No newline at end of file diff --git a/Practicas/Practicas_PHP/ejercicios/EJERCICIO2_PHP.php b/Practicas/Practicas_PHP/ejercicios/EJERCICIO2_PHP.php new file mode 100644 index 0000000..6a58627 --- /dev/null +++ b/Practicas/Practicas_PHP/ejercicios/EJERCICIO2_PHP.php @@ -0,0 +1,112 @@ + + + + +EJERCICIO2 PHP + + +

1.

+ Película : $nombreP

"; + }; + echo '
'; + foreach ($peliculas as $posicion=>$nombreP) { + $posicion=$posicion+1; + echo "

Película $posicion: $nombreP

"; + }; + echo '
'; + echo ''; + ?> +

2.

+ '; + for ($i = 1; $i < 10; $i++) { + echo "$i, "; + } + echo $i; + //Imprime los números de 60 al 70. + echo '
'; + for ($i = 60; $i < 70; $i++) { + echo "$i, "; + } + echo $i; + //Imprime los números del 20 al 1. + echo '
'; + for ($i = 20; $i >1; $i--) { + echo "$i, "; + } + echo $i; + //Imprime los números del 1 al 1000 + echo '
'; + for ($i = 1; $i < 1000; $i++) { + echo "$i, "; + } + echo $i; + //Imprime la tabla del 5. + echo '
'; + for ($i = 1; $i < 11; $i++) { + echo "5 x $i = "; + echo 5*$i; + echo '
'; + } + //Imprimir los números pares que hay dentro de los 100 primeros números enteros. + echo '
'; + for ($i = 0; $i < 100; $i=$i+2) { + echo "$i, "; + } + echo $i; + echo '
'; + //Escribe un script PHP que muestre los números del 1 al 10 en una tabla de una fila y 10 columnas. Utiliza un bucle while + echo ''; + echo ''; + $i=0; + while ($i<10) { + $i++; + echo ""; + } + echo ''; + echo '
$i
'; + ?> +

3.

+ '; + foreach (range(1, 31) as $num) { + echo ""; + }; + echo ''; + //-A su otro lado select para pedir el mes de nacimiento: 1 al 12. Usa un for. + echo ''; + //-Y a continuación otro select para pedir el año de nacimiento: 1900 al año actual. Usa un while + echo ''; + ?> + + diff --git a/Practicas/Practicas_PHP/ejercicios/Ejercicio1_04.php b/Practicas/Practicas_PHP/ejercicios/Ejercicio1_04.php index 50478bd..ed0fe65 100755 --- a/Practicas/Practicas_PHP/ejercicios/Ejercicio1_04.php +++ b/Practicas/Practicas_PHP/ejercicios/Ejercicio1_04.php @@ -1,54 +1,60 @@ + Document + Hoy, es un buen día para aprender a programar en PHP.

'; - echo $texto; - $nombre='Marcos Lopez'; - $edad=46; - echo '

Soy '. $nombre .' y tengo '. $edad . ' años

'; + function areaEsfera($radio) + { + $area = 4 * pi() * pow($radio, 2); + return $area; + } + + $texto = '

Hoy, es un buen día para aprender a programar en PHP.

'; + echo $texto; + $nombre = 'Marcos Lopez'; + $edad = 46; + echo '

Soy ' . $nombre . ' y tengo ' . $edad . ' años

'; - $radio1 = 10; - $area1 = areaEsfera($radio1); - echo "El area de una esfera de $radio1 metros de radio es: $area1
"; - $radio2 = 4; - $area2 = areaEsfera($radio2); - echo "El area de una esfera de $radio2 metros de radio es: $area2
"; + $radio1 = 10; + $area1 = areaEsfera($radio1); + echo "El area de una esfera de $radio1 metros de radio es: $area1
"; + $radio2 = 4; + $area2 = areaEsfera($radio2); + echo "El area de una esfera de $radio2 metros de radio es: $area2
"; - - echo '

Las siglas de HTML significan "HyperText Markup language"

'; - $rojo='rojo'; - $azul='azul'; - $verde='verde'; - echo "Los colores guardados en las variables son $rojo, $azul, $verde"; - $microrelato='Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eaque quidem omnis sequi delectus fugiat sint, veniam adipisci officiis. Molestias aperiam non inventore possimus alias minima obcaecati odio ab nisi quos!'; - $numeroPalabras = str_word_count($microrelato); - echo '
'; - echo $microrelato; - echo '
'; - echo "Nº de palabras: $numeroPalabras"; - $poblaciones = ["España" => 47329981,"Portugal" => 10341330,"Francia" => 65273111,"Italia" => 60461826,"Grecia" => 10724599]; - arsort($poblaciones); - echo '
    '; + echo '

    Las siglas de HTML significan "HyperText Markup language"

    '; + $rojo = 'rojo'; + $azul = 'azul'; + $verde = 'verde'; + echo "Los colores guardados en las variables son $rojo, $azul, $verde"; - foreach ($poblaciones as $pais => $poblacion) { - echo "
  1. $pais - $poblacion
  2. "; - } - echo '
'; - + $microrelato = 'Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eaque quidem omnis sequi delectus fugiat sint, veniam adipisci officiis. Molestias aperiam non inventore possimus alias minima obcaecati odio ab nisi quos!'; + $numeroPalabras = str_word_count($microrelato); + echo '
'; + echo $microrelato; + echo '
'; + echo "Nº de palabras: $numeroPalabras"; + $poblaciones = ["España" => 47329981, "Portugal" => 10341330, "Francia" => 65273111, "Italia" => 60461826, "Grecia" => 10724599]; + arsort($poblaciones); + echo '
    '; - ?> + foreach ($poblaciones as $pais => $poblacion) { + echo "
  1. $pais - $poblacion
  2. "; + } + echo '
'; + + var_dump($poblaciones); + + + ?> + \ No newline at end of file diff --git a/Practicas/Practicas_PHP/ejercicios/Ejercicio2_04.php b/Practicas/Practicas_PHP/ejercicios/Ejercicio2_04.php new file mode 100644 index 0000000..db9278e --- /dev/null +++ b/Practicas/Practicas_PHP/ejercicios/Ejercicio2_04.php @@ -0,0 +1,110 @@ + + + + + + + Document + + + + Pelicula $pelicula

"; + } + + foreach ($peliculas as $index => $pelicula) { + echo "

Pelicula " . ($index + 1) . " - $pelicula

"; + } + + echo ''; + + + // 2.Utilizando bucles: + // - Imprime los números del 1 al 10.(separados por comas) + // - Imprime los números de 60 al 70.(separados por comas) + // - Imprime los números del 20 al 1.(separados por comas) + // - Imprime los números del 1 al 1000.(separados por comas) + // - Imprime la tabla del 5.(con este formato 5 x 1 = 5) + // - Imprimir los números pares que hay dentro de los 100 primeros números enteros. + // - Escribe un script PHP que muestre los números del 1 al 10 en una tabla de una fila y 10 columnas. + foreach (range(1, 10) as $num) { + echo "$num ,"; + }; + echo '
'; + foreach (range(60, 70) as $num) { + echo "$num ,"; + }; + echo '
'; + for ($i = 20; $i >= 1; $i--) { + echo $i . ", "; + } + echo '
'; + for ($i = 1; $i <= 1000; $i++) { + echo $i . ", "; + } + echo '
'; + for ($i = 1; $i <= 10; $i++) { + echo '

5 X ' . $i . ' = ' . (5 * $i) . '

'; + } + echo '
'; + for ($i = 0; $i <= 100; $i = $i + 2) { + echo $i . ", "; + } + echo '
'; + + echo ""; + for ($i = 1; $i <= 10; $i++) { + echo ""; + } + echo "
$i
"; + + ?> + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Practicas/Practicas_PHP/ejercicios/Ejercicio3_04.php b/Practicas/Practicas_PHP/ejercicios/Ejercicio3_04.php new file mode 100644 index 0000000..fd6dbfe --- /dev/null +++ b/Practicas/Practicas_PHP/ejercicios/Ejercicio3_04.php @@ -0,0 +1,244 @@ + + + + + + + Document + + + + "; + if ((false && true)) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((1 == 1 && 2 == 1)) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if (("test" == "test")) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((1 == 1 || 2 != 1)) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((true && 1 == 1)) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((false && 0 != 0)) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((true || 1 == 1)) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if (("test" == "testing")) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((1 != 0 && 2 == 1)) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if (("test" != "testing")) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if (("test" == 1)) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((!(true && false))) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((!(1 == 1 && 0 != 1))) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((!(10 == 1 || 1000 == 1000))) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((!(1 != 10 || 3 == 4))) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((!("testing" == "testing" && "Zed" == "Cool Guy"))) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((1 == 1 && (!("testing" == 1 || 1 == 0)))) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if (("chunky" == "bacon" && (!(3 == 4 || 3 == 3)))) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + if ((3 == 3 && (!("testing" == "testing" || "PHP" == "Fun")))) { + echo "True"; + } else { + echo "False"; + } + echo "
"; + + + // 2. Control de acceso por edad:(Obten el año actual del sistema en lugar de escribirlo a mano en una variable con date('Y')) + // (Obten el año de nacimiento con un random entre 1900 y 2023) + // -Pide el año de nacimiento. + // -Calcula la edad. + // -Si es mayor de edad, dile que puede pasar dentro. + // -Si es menor, dile que no puede pasar. + // -Si tiene más de 65 años, dile que es demasiado mayor para entrar. + + $anoNac = rand(1900, 2023); + $edad = date('Y') - $anoNac; + echo "Año de nacimiento: $anoNac, tiene $edad años
"; + if ($edad >= 18) { + if ($edad >= 65) { + echo 'Demasiado mayor para pasar!!!!!'; + } else { + echo 'Puedes pasar!!!!!'; + } + } else { + echo 'No puedes pasar!!!!!'; + } + echo '
'; + + + + //3. La función date() con el parametro 'D' nos devuelve las tres primeras letras del día de la semana en inglés: Mon, Tue, Wed, Thu, Fri, Sat, Sun. + //Ej.echo date('D'); // Salida Mon + //Empleando switch debemos hacer que en la página salga un mensaje como este con el día en español "El día de la semana es: XXXX". + switch (date('D')) { + case 'Mon': + $diaEsp = 'Lunes'; + break; + case 'Tue': + $diaEsp = 'Martes'; + break; + case 'Wed': + $diaEsp = 'Miercoles'; + break; + case 'Thu': + $diaEsp = 'Jueves'; + break; + case 'Fri': + $diaEsp = 'Viernes'; + break; + case 'Sat': + $diaEsp = 'Sabado'; + break; + case 'Sun': + $diaEsp = 'Domingo'; + break; + } + echo "Día de la semana $diaEsp"; + + echo '
'; + // 4.Crea un simulador de tirada de dados dobles: + // - Da la puntuación de la tirada. + // - Debe indicarnos si la tirada es par o impar. + // - Si sacamos una tirada doble debe indicarlo. + $dado1 = rand(1, 6); + $dado2 = rand(1, 6); + $resTirada = $dado1 + $dado2; + echo "DADOS!!!! (dobles)
La tirada es $resTirada
"; + if ($dado1 === $dado2) { + echo "Has hecho un doble $dado1
"; + } + if ($resTirada % 2 === 0) { + echo "La tirada es par
"; + } + + //Ahora lo pasamos a tres dados indica cuando se saca un doble y un trio + $dado1 = rand(1, 6); + $dado2 = rand(1, 6); + $dado3 = rand(1, 6); + $resTirada = $dado1 + $dado2 + $dado3; + echo "DADOS!!!! (triples)
La tirada es $resTirada
"; + if ($dado1 === $dado2 && $dado1 === $dado3) { + echo "Has hecho un triple $dado1
"; + } + if ($resTirada % 2 === 0) { + echo "La tirada es par
"; + } + + + + + ?> + + + + \ No newline at end of file diff --git a/Practicas/Practicas_PHP/ejercicios/index.php b/Practicas/Practicas_PHP/ejercicios/index.php deleted file mode 100755 index 4e1b63b..0000000 --- a/Practicas/Practicas_PHP/ejercicios/index.php +++ /dev/null @@ -1,3 +0,0 @@ -