|
|
Línea 155: |
Línea 155: |
| }} | | }} |
| </div> | | </div> |
− | | + | {{MRM_Actividad|Title=Probando la extensión| |
− | <div class="slide">
| + | ;Verifica a ver qué ocurre si la extensión del fichero no es php |
− | | + | |
− | ===Dónde poner el código embebido===
| + | |
− | <br/>
| + | |
− | {{MRM_Pregunta|Dónde escribir código php|{{feedback|Dónde queramos que se ejecute algo}} }} | + | |
− | </div>
| + | |
− | | + | |
− | <div class="slide">
| + | |
− | <hr />
| + | |
− | *Donde queramos que se ejecute algo
| + | |
− | <hr/>
| + | |
− | [[Imagen:codigoPHP.png|center|900px]]
| + | |
− | *Se ejecuta como si fuera un solo programa
| + | |
− | *A la hora de incluir php podemos se usa mucho la filosofía Modelo Vista /Controlador que veremos en otro tema
| + | |
− | {{MRM_Resumen|Title=Modelo vista controlador|
| + | |
− | *Trata de separar el código según su cometido, de forma muy resumida
| + | |
− | *Hay acciones que realizan cálculos y obtienen resultados (Controlador
| + | |
− | *Hay acciones que lo que hacen es visualziar valores (Vista)
| + | |
− | *Hay acciones que se encargan de interactuar con la base de datos (Modelo)
| + | |
| }} | | }} |
− | {{MRM_Puntos clave|Title=Empecemos aplicar el modelo vista controlador|
| |
− | *Podemos llevar este criterio desde el principio siguiente el esquema siguiente
| |
− | {{Plegable|hide|esqueleto MVC|
| |
− | <source lang=html5>
| |
− | <!-- Empecemos nuestro fichero escribiendo instrucciones php
| |
− | Estas instrucciones realizarán cálculos y obtendrán valores
| |
− | En ningúm momento generan salidas,
| |
− | Trataremos de almacenar los valores en variables
| |
− | -->
| |
− | <?php
| |
− | //instrucciones php
| |
− | $variables = "Mensaje escrito desde php";
| |
− | ?>
| |
− | <!--Ahora el código html-->
| |
− | <!DOCTYPE html>
| |
− | <html>
| |
− | <head>
| |
− | <meta charset="UTF-8">
| |
− | <title>probando php</title>
| |
− | </head>
| |
− | <body>
| |
− | <!--Dentro del html cuando necesitemos ver valores
| |
− | los escribiemo
| |
− | También puede ser que necesitemos instrucciones
| |
− | las escribimos, pero intentando escribir lo necesario.
| |
− | Esto es vista
| |
− | -->
| |
− | <h1> <?php echo $variable ?></h1>
| |
− | </body>
| |
− | </html>
| |
− |
| |
− |
| |
− |
| |
− | </source>
| |
− | }}
| |
− | }}
| |
− |
| |
− | {{MRM_Ejemplo|Title=Programa para ver si un número es o no par|
| |
− | No te preocupes si no entiendes el código, lo iremos viendo
| |
− | <source lang=php>
| |
− | <?php
| |
− |
| |
− | //-----------CONTROLADOR-----------------------------
| |
− | //Instrucciones que realizan cálculos
| |
− | //Guardo el resultado que quiero mostrar en variables
| |
− | $a = rand(1, 100); //Genero un número aleatorio
| |
− | $fecha = date("d m Y", time()); //Obtenemos la fecha
| |
− | $title = "Hoy, $fecha, veremos si '$a' es par o impar "; //Creo un título
| |
− | if ($a % 2 == 0) //Si el número es par
| |
− | $msj = "El número $a es par";
| |
− | else
| |
− | $msj = "El número $a es impar";
| |
− | ?>
| |
− |
| |
− | <!-- Ahora metemos el código php cuando lo necesitemos-->
| |
− | <!------------------- VISTA (solo la parte php)----------------------->
| |
− | <!DOCTYPE html>
| |
− | <html>
| |
− | <head>
| |
− | <meta charset="UTF-8">
| |
− | <title>probando php</title>
| |
− | </head>
| |
− | <body>
| |
− | <h1> <?php echo $title ?></h1>
| |
− | <hr />
| |
− | <h3> <?php echo $msj ?></h3>
| |
− |
| |
− | </body>
| |
− | </html>
| |
− | </source>
| |
− |
| |
− |
| |
− | }}
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− | </div>
| |
| | | |
| <div class="slide"> | | <div class="slide"> |
− |
| |
− | ===Escribir PHP con directivas de inclusión===
| |
− | *Podemos escribir el código php escribiéndolo en un fichero aparte y luego lo incluimos.
| |
− | **Incluimos el fichero explícitamente
| |
− | **Para ello usamos directivas o instrucciones del tipo '''''include'''''
| |
− | <source lang=php>
| |
− | include('ruta/nobrefichero');
| |
− | require('ruta/nobrefichero');
| |
− | include_once('ruta/nombrefichero');
| |
− | require_once('ruta/nombrefichero');
| |
− | </source>
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | ;Ambas son palabras reservadas del lenguaje y sirven para incluir el contenido de un fichero con sentencias php en esa posición del código.
| |
− | {{MRM_Puntos clave|Title=Include Vs Require|
| |
− | *Ambas incluyen el contenido de un fichero php en esa posición
| |
− | **Con include si no se encuentra se continúa ejecutando en esa posición
| |
− | **Con require si no está el fichero se detiene en ese punto la ejecución del script}}
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | {{MRM_Puntos clave|Title=include/require Vs include_once/require_once |
| |
− | *Ambas incluyen el contenido de un fichero php en esa posición
| |
− | **include/require siempre buscan e incluyen el fichero en esa posición
| |
− | **include_once/require_once antes de incluirlo mira a ver si ya lo incluyó previamente en cuyo caso ya no lo hace}}
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | {{MRM_Actividad|Title=Probando include require
| |
− | |Crea 4 ficheros con el siguiente código
| |
− | '''''fichero_include.php'''''
| |
− | <source lang=php>
| |
− | <?php
| |
− | echo "<b><i>Hola desde un fichero include </b></i><hr />";
| |
− | ?>
| |
− | </source>
| |
− | '''''fichero_include_once.php'''''
| |
− | <source lang=php>
| |
− | <?php
| |
− | echo "<b><i>Hola desde un fichero include once </b></i><hr />";
| |
− | ?>
| |
− | </source>
| |
− | '''''fichero_require.php'''''
| |
− | <source lang=php>
| |
− | <?php
| |
− | echo "<b><i>Hola desde un fichero require </b></i><hr />";
| |
− | ?>
| |
− | </source>
| |
− | '''''fichero_require_once.php'''''
| |
− | <source lang=php>
| |
− | <?php
| |
− | echo "<b><i>Hola desde un fichero require once </b></i><hr />";
| |
− | ?>
| |
− | </source>
| |
− | '''''Ahora crea un programa principal dónde uses las instrucciones de inclusión vistas en este apartado'''''.
| |
− | <source lang=php>
| |
− | <?php
| |
− |
| |
− | echo "<h2>Ahora vamos a incluir un fichero con include</h2>";
| |
− | include 'ficheros/fichero_include.php';
| |
− |
| |
− | echo "<h2>ahora vamos a incluir un fichero con require</h2>";
| |
− | require 'ficheros/fichero_require.php';
| |
− |
| |
− | echo "<h2>Ahora vamos a incluir un fichero con include_once</h2>";
| |
− | include_once 'ficheros/fichero_include_once.php';
| |
− |
| |
− | echo "<h2>Ahora vamos a incluir un fichero con require_once</h2>";
| |
− | require_once 'ficheros/fichero_require_once.php';
| |
− |
| |
− | echo "<h2>Ahora vamos a incluir un fichero que no existe con include</h2>";
| |
− | include 'ficheros/fichero_no_existe_include.php';
| |
− | echo "Vemos que no pasa nada, por que el fichero no existe pero sigue <hr />";
| |
− |
| |
− | echo "<h2>Ahora volvemos a incluir un fichero con include_once</h2>";
| |
− | include_once 'ficheros/fichero_include_once.php';
| |
− | echo "Vemos que no pasa nada, por que el fichero ya se había incluido y no se vuelve a incluir<hr />";
| |
− |
| |
− | echo "<h2>Ahora volvemos a incluir un fichero con require_once</h2>";
| |
− | require_once 'ficheros/fichero_require_once.php';
| |
− | echo "Vemos que no pasa nada, por que el fichero ya se había incluido y no se vuelve a incluir<hr />";
| |
− |
| |
− | echo "<h2>Ahora vamos a incluir un fichero con include para ver que sí que se vuelve a incluir</h2>";
| |
− | include 'ficheros/fichero_include.php';
| |
− |
| |
− | echo "<h2>Ahora vamos a incluir un fichero con require y vemos que sí se vuelve a incluir</h2>";
| |
− | require 'ficheros/fichero_require.php';
| |
− |
| |
− | echo "<h2>Ahora no incluimos con require un fichero que no existe</h2>";
| |
− | require 'ficheros/fichero_no_existe_require.php';
| |
− | echo "Esta línea ya no se imprimirá ni nada que vaya después de aquí";
| |
− | ?>
| |
− | </source>
| |
− | {{Tip|
| |
− | *Siéntete cómoda en modificar el fichero y ver el resultado
| |
− | *Observa que estas instrucciones no son exactamente funciones, por lo que no necesitan paréntesis (aunque se puede poner por mantener una homogeneidad con sintaxis del uso o invocación de funciones)
| |
− | <source lang=php>
| |
− | include 'ficheros/fichero_include.php'
| |
− | //Es léxicamente y sintácticamente igual que
| |
− | include ('ficheros/fichero_include.php');
| |
− |
| |
− | </source>
| |
− | }}
| |
− | }}
| |
− | </div>
| |
− |
| |
− |
| |
− |
| |
− | <div class="slide">
| |
− | {{MRM_Recursos de la Web|
| |
− | *[http://php.net/manual/es/ php] página oficial en español LO MEJOR!!!!
| |
− | *http://php.net/manual/es/
| |
− | *<!-- MRM incluir en el otro documento http://php.net/manual/es/ini.core.php -->
| |
− |
| |
− | }}
| |
− | </div>
| |
− |
| |
− | <div class=slide>
| |
− | ===Comentarios ===
| |
− | *Son ignorados por el intérprete, no generan instrucciones, pero se consideran parte del software
| |
− | *En php tengo 4 formas de hacer comentarios
| |
− | <source lang=php>
| |
− | <?php
| |
− | /*
| |
− | Este código no hace nada pero muestra
| |
− | la sintaxis de los comentarios
| |
− | como este que ocupa varias líneas tipo lenguaje C o Java
| |
− | */
| |
− | $miVariable= 8;// Esta parte de la línea se ignorará
| |
− | $miVariable+= 8;# y esta parte de línea tambien
| |
− | echo "Valor de la variable $miVariable";
| |
− | //Este es otro comentario de una sola línea
| |
− | #Este es otro modo de hacer comentarios tipo script de linux
| |
− | /**
| |
− | Este comentario permite insertar información
| |
− | Para que luego phpDocumentor genere una página web
| |
− | Con la información de mi código
| |
− | */
| |
− | </source>
| |
− | *Así como comentar las funciones como veremos
| |
− | *Este código nos visualizará lo siguiente
| |
− | <source lang=php>
| |
− | Valor de la variable 16
| |
− | </source>
| |
− | El resto del código será ignorado
| |
− | </div>
| |
− | <div class='slide>
| |
− | *Es bueno escribir al principio del script
| |
− | <source lang=php>
| |
− | <?php
| |
− | /**
| |
− | * User: Nombre y apellidos
| |
− | * Date: 19/10/17
| |
− | * Version: 17:40
| |
− | */
| |
− | </source>
| |
− | <>/div
| |
− | <div class="slide">
| |
− | *Aquí tienes la referencia para ver las diferentes directivas para generar código
| |
− | *Más adelante en el curso las veremos.
| |
− | {{MRM_Recursos de la Web|
| |
− | *Directivas para comentarios https://phpdoc.org/docs/latest/index.html
| |
− | }}
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | {{MRM_Actividad|Title=probando comentarios |
| |
− | *Escribe la siguiente función anterior en un fichero php
| |
− |
| |
− | <source lang=php>
| |
− | function miFuncion($num1, $num2){
| |
− | if ($num1>$num2)
| |
− | return $num1;
| |
− | else
| |
− | return $num2;
| |
− | </source>
| |
− | Ahora justo en la línea de encima de función escribe
| |
− | <source lang=php>
| |
− | /**
| |
− | </source>
| |
− | *y luego presiona intro
| |
− | *Te debería de quedar
| |
− | <source lang=php>
| |
− | /**
| |
− | *
| |
− | * @param type $num1
| |
− | * @param type $num2
| |
− | * @return type
| |
− | */
| |
− | function miFuncion($num1, $num2){
| |
− | if ($num1>$num2)
| |
− | return $num1;
| |
− | else
| |
− | return $num2;
| |
− |
| |
− | </source>
| |
− | }}
| |
− | </div>
| |