Plantilla:PHP/Declaracion/Funciones

De WikiEducator
Saltar a: navegación, buscar

Funciones



Icon objectives.jpg
Objetivo
Las funciones es un elemento fundamental
  • Permite crear código modular
  • Una forma de estructurar nuestro programa

Declaración de funciones

function nombreFuncion ($paramFormal1, $paramFormal2 ,...){
  //Instrucciones de la función
  return $valorRetorno //Opcionalmente en caso de que devuelva algún valor la función
}
</div>
<div class=slide>
*Es importante diferenciar entre delarar una función e invocar a una función
*Algo obvio, pero importante
*En la declaración tenemos tres partes
#nombre o identificación de funciones
#parámetros formales entre paréntesis (Estos han de existir, aunque no haya parámetros)
#Cuerpo de la función, dentro de él puede estar la instrucción return, en cuyo momento termina la ejecución de la función y se vuelve a la siguiente instrucción del programa, siguiente a la invocación de la función.
</div>
 
 
<div class=slide>
;Identificador de función
* El nombre de función es un identificador que empieza por una letra o guión bajo, seguido 0 o muchas letras, números o guiones bajos  
{{Tip|Expresión regular para el identificador de funciones|
'''''[a-zA-Z_f_][a-zA-Z0-9_]*'''''
}}
</div>
<div class=slide>
;Parámetros formales
*Son nombres de variables que usaré al escribir el código o cuerpo de la función
*El nombre ha de ser significativo y se convertirán en variables locales a la función
*Una vez que se termina la función estas variables desaparecerán de memoria
{{MRM_Puntos clave|Title=parámetros formales|
Los parámetros formales son variables locales a la función}}
</div>
 
<div class=slide>
{{MRM_Actividad|Title=Ejercicio usando funciones|
'''''Haz un programa donde en el programa principal se creen dos variables $a y $b'''''
*Crea una función que reciba como parámetros locales '''''$a''''' y '''''$b'''''
*La función visualizará el valor de las variables, las modificará y las volverá a visualizar
*El programa principal 
#asignará valor a las variables
#las visualizará
#invocará a la función
#volverá a visualizar las variables
}}
</div>
 
<div class=slide>
===Parámetros formales: Valores y referencias===
*Cómo hemos visto, los parámetros formales son valores pasados en la invocación a la función
*Si queremos que la función pueda modificar el valor de los valores de los parámetros, en este caso hemos de pasarlos por referenica
*En este caso lo que ocurre en realidad es que pasamos la dirección de memoria dónde se guarda el valor
</div>
 
<div class=slide>
;Invocando funciones
 
*Parámetros formales
*Invocación a funciones
**Parámetros reales
**Paso de parámetros por valor Vs Referencia
</div>
 
 
 
 
<div class="slide">
====Funciones de php de tipos y valores====
 http://php.net/manual/es/ref.var.php
*Existen una serie (muchas) de funciones que son interesantes de conocer
*Estas funciones ya están creadas y se pueden usar directamente
*Están relacionadas con los tipos de datos y valores
*Alguna de ellas son extremadamente útiles y utilizadas, por ejemplo antes de procesar un dato, hay que ver que dicho dato tenga valor.
*A continuación trataremos alguna de ellas
</div>
 
<div class="slide">
;[http://es1.php.net/manual/es/function.var-dump.php var_dump]
<source lang=php>
 void var_dump($expresion)
  • Nos da información sobre la estructura de un valor resultado de una expresion
isset
 bool isset ( $variable )
  • verifica que una variable tiene valor (está definida y no tiene un valor null)
<?php
 $VariableValor= 5;
 print ("El valor de la variable es $VariableValor");
 print ("El valor de otra variable es $OtraVariableValor");
 if (isset($VariableValor))
     print ("VariableValor tiene valor asignado");
 else
     print ("VariableValor no no tiene valor asignado");
 if (isset($OtraVariableValor))
     print ("OtraVariableValor tiene valor asignado");
 else
     print ("OtraVariableValor no no tiene valor asignado");
  ?>
empty
bool empty ($varriable)
  • Determina si una variable no existe. Devuelve true si no existe o su valor está vacío


Icon activity.jpg
Actividad

Probamos las fuciones var_dump() que nos da información sobre el valor y el tipo



Icon activity.jpg
Actividad

Usando la función xxxyyy donde xxx e yyy será dec oct bin o hex para convertir el valor de un sistema numérico a otro



Icon activity.jpg
Actividad
  • Define las siguientes variables que se especifican en el código siguiente y verifica el resultado con empty()
 $num=0;
 $nombre="";
 $nombre=null;
 $nombre="0";
 $pregunta = FALSE;



gettype]
  • Devuelve el tipo de una variable
string gettype($variable)
[1]is-double is-int, is-xxx
  • son funciones donde xxx especificado en el último nombre, puede ser cualquiera de los tipos

Funciones is-xxx.png

  • Todas ellas devuelve un booleano que indica si la variable, valor o expresion es o no de ese tipo,
string is_int($variable);
string is_double($variable);
string is_bool($variable);
string is_integer($variable);
string is_null($variable);
string is_string($variable);
...


Icon activity.jpg
Actividad

Visualizar de qué tipo es la expresión mostrada en el código siguiente y visualiza el valor de la expresión


  $a=5;
unset
  • Destruye la variable especificada perdiéndose su valor

void unset ($var)