Diferencia entre revisiones de «Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/Sintaxis/1»

De WikiEducator
Saltar a: navegación, buscar
 
(16 revisiones intermedias por el mismo usuario no mostrado)
Línea 14: Línea 14:
  
 
<div class="slide">
 
<div class="slide">
==Operadores y expresiones==
 
<br />
 
{{MRM_Objetivos|
 
;Son partes de las frases de un lenguaje de programación}}
 
</div>
 
  
<div class="slide">
+
===Dónde poner el código embebido===
===Operadores===
+
<br/>
*Son símbolos que realizan acciones sobre operandos y dan como resultado un valor
+
{{MRM_Pregunta|Dónde escribir código php
*Tenemos diferentes tipos de operadores en función del tipo de operandos y del resultado
+
{{MRM_Pregunta|Title=Respuesta|Dónde queramos que se ejecute algo}}
;operadores aritméticos (+,-,*,/,%,**, ++, --)
+
}}
*Retorna un valor numérico
+
*el ++, -- son valores de autoincremeto y autodecremento, pueder ser pre o post
+
 
</div>
 
</div>
 
 
<div class="slide">
 
<div class="slide">
;Operadores
+
<hr  />
<source lang=php>
+
*Donde queramos que se ejecute algo
$a=5;
+
<hr/>
if ($a++==5)
+
[[Imagen:codigoPHP.png|center|500px]]
    echo '$a que vale '.$a.' dice que vale 5 ???? <br>'
+
*Se ejecuta como si fuera un solo programa
        . 'Esto es por que primero compara y luego incrementa<br>';
+
*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|
echo 'ahora $a vale '.$a.'<br>';
+
*Trata de separar el código según su cometido, de forma muy resumida
 
+
*Hay acciones que realizan cálculos y obtienen resultados (Controlador
if (++$a==6)
+
*Hay acciones que lo que hacen es visualziar valores (Vista)
    echo 'esto nunca saldrá ya que $a se incrementa antes de comparar';
+
*Hay acciones que se encargan de interactuar con la base de datos (Modelo)
else
+
    echo 'efectivamente ahora $a ya no vale 6 sino '.$a.'<br>';
+
?>
+
</source>
+
</div>
+
 
+
<div class="slide">
+
;Operadores
+
*El código anterior genera la siguiente salida
+
<source lang=php>
+
$a que vale 6 dice que vale 5 ????
+
Esto es por que primero compara y luego incrementa
+
ahora $a vale 6
+
efectivamente ahora $a ya no vale 6 sino 7
+
</source>
+
</div>
+
 
+
<div class="slide">
+
;operadores comparación (==,<,>,>=,<=,<>,!=,===,!==)
+
:Este tipo de operadores genera un booleano como resultado de evaluar la expresión
+
{{MRM_Puntos clave|
+
*'''''<nowiki>==</nowiki>''''' operador de comparación '''''igual que''''' (mismo valor)
+
*'''''<nowiki>===</nowiki>''''' operador de comparación '''''exactamente igual que''''' (mismo valor y tipo)
+
 
}}
 
}}
</div>
 
 
<div class="slide">
 
;Operador == Vs ===
 
<source lang=php>
 
$num=1;
 
if ($num==true)
 
    echo '$num es igual a true<br>';
 
if ($num===true){
 
    echo "esto nunca se ejecutará";
 
}else
 
    echo '$num no es exactamente igual a true';
 
</source>
 
</div>
 
 
<div class="slide">
 
;Operador == vs ===
 
 
*El código anterior generaría  la siguiente salida
 
<source lang=php>
 
$num es igual a true
 
$num no es exactamente igual a true
 
</source>
 
*Ver la sección '''''comparación de tipos''''' de la página oficial
 
http://php.net/manual/es/language.operators.comparison.php
 
</div>
 
 
<div class="slide">
 
;operadores de concatenacón( .) concatena cadena de caracteres.
 
:El operador + no está sobre cargado, observa el siguiente código
 
<source lang=php>
 
$nombre="Maria";
 
$apellido = " de la Oh";
 
 
$nombreCompleto = $nombre.$apellido;
 
echo "el valor de nombre completo es $nombreCompleto ---<br>";
 
 
$nombreCompleto = $nombre+$apellido;
 
echo "el valor de nombre completo es $nombreCompleto --<br>";
 
</source>
 
</div>
 
 
<div class="slide">
 
;La salida del código anterior sería
 
<source lang=php>
 
el valor de nombre completo es Maria de la Oh ---
 
el valor de nombre completo es 0 --
 
</source>
 
</div>
 
 
<div class="slide">
 
;Operadores de asignación (= , =>)
 
:Se pueden combinar con los aritméticos (+=, *=, ...)  y con los de concatenación (.=)
 
:En este caso el valor de la variable de la izquierda se toma como primero operando
 
;Operador de asignación
 
<source lang=php>
 
<?php
 
$b=1;
 
for ($a=0;$a<10;$a++){
 
    $b*=10;
 
    echo 'valor de $b ='.$b.'<br>';
 
}
 
?>
 
</source>
 
</div>
 
 
<div class="slide">
 
*El código anterior genera la siguiente salida
 
<source lang=php>
 
valor de $b =10
 
valor de $b =100
 
valor de $b =1000
 
valor de $b =10000
 
valor de $b =100000
 
valor de $b =1000000
 
valor de $b =10000000
 
valor de $b =100000000
 
valor de $b =1000000000
 
valor de $b =10000000000
 
</source>
 
</div>
 
 
<div class="slide">
 
;operadores de ejecución (``)
 
:PHP proporciona un operador especial que permite ejecutar sentencias
 
*Observa el siguiente código
 
<source lang=php>
 
<?php
 
$Discos = `df`;
 
echo "<pre>$Discos</pre>";
 
?>
 
</source>
 
</div>
 
 
<div class="slide">
 
*El código anterior generará la siguiente salida
 
<source lang=php>
 
Filesystem    1K-blocks    Used Available Use% Mounted on
 
/dev/sda5      86378608  6072360  75895384  8% /
 
none                  4        0        4  0% /sys/fs/cgroup
 
udev            4023720        4  4023716  1% /dev
 
tmpfs            806904    1384    805520  1% /run
 
none                5120        0      5120  0% /run/lock
 
none            4034504    6588  4027916  1% /run/shm
 
none              102400      28    102372  1% /run/user
 
/dev/sda7      101797224 40480360  56122728  42% /home
 
</source>
 
</div>
 
 
<div class="slide">
 
;Invocando funciones del sistema
 
*El operador anterior (comillas invertidas) es igual que la función '''''shell_exec()'''''
 
http://php.net/manual/es/function.shell-exec.php
 
</div>
 
 
<div class="slide">
 
;operadores lógicos (and,&&, or, ||, xor !)
 
http://php.net/manual/es/language.operators.logical.php
 
:Funcionan por cortocircuito
 
:El operador  '''''xor''''' da verdad si los operando son de diferente valor uno true y el otro false
 
:La notación '''''and''''' y '''''&&''''' representan el mismo operador, igual ocurre con '''''or''''' y '''''||'''''
 
*La diferencia entre los operadores es la prioridad
 
http://php.net/manual/es/language.operators.precedence.php
 
</div>
 
 
 
 
 
  
 
</div>
 
</div>

Última revisión de 10:26 22 oct 2018



DWES TituloTema3.gif


Dónde poner el código embebido




Icon qmark.gif
Pregunta
Dónde escribir código php



Icon qmark.gif
Respuesta
Dónde queramos que se ejecute algo



  • Donde queramos que se ejecute algo

CodigoPHP.png
  • 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


Icon summary.gif
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)