Ver índice
Funciones que devuelven valores

        Ocultar índice  

   Índice de contenidos
   Instalación en Windows
   Instalación en Ubuntu
   Servidores seguros
   Páginas dinámicas
   Sintaxis básica
   Operaciones
   Arrays
   Formatos de presentación
   Operadores
   Bucles
   Extraer y ord. información
   Funciones
   Ficheros externos
   Imágenes dinámicas
   Gestión de directorios
   Cookies y sesiones
   Clases y objetos
   Ficheros en formato PDF
   Bases de datos MySQL
   PHP y XML
   PDO - Bases SQLite / MySQL
   MySQL a traves de misqli
   Algo de JavaScript y AJAX


Funciones que devuelven valores

Las funciones PHP pueden ser llamadas a partir de un script y posteriormente recoger –en ese mismo script– los resultados de su ejecución. Para conseguir este resultado debemos escribir dentro de la función la instrucción return seguida de la variable o la instrucción cuyo resultado queremos que sea devuelto al script desde el que ha sido llamada la función.

Tal como podemos ver en el ejemplo, los valores devueltos por return pueden ser presentados directamente en la página o recogidos por una variable.

También es posible que la función genere un array y que este sea devuelto a una variable que se convertiría a ese tipo de forma automática.

Otra opción de recoger los valores devueltos por return es invocar la función mediante una llamada del tipo:

list(v1, v2,..)=llamada

Las variables v1, v2, etc. recogerán los valores de los elementos del array devuelto por la función.

<?php
# asignamos valores a dos variables
 $a=3; $b=5;
# escribimos una función que eleva la variable a
# a la potencia indicada en b
# insertando return delante de la operación
function a1($a,$b){
    return pow($a,$b);
}
#incluimos en la instrucción echo una llamada
# a la función y en ella pasamos los valores
# recogidos en las variables a y b
# return conseguirá que se ejecute esa función
# y que echo recoja e imprima el resultado
echo "El valor de a elevado a b es: ",a1($a,$b),"<br>";
# esta otra función generará y devolverá un array
# con los resultados de la ejecucion del bucle for
function a2($a,$b){
    for ($i=0;$i<=$b;$i++){
              $z[]=pow($a,$i);
     }
   return $z;
}
# hacemos una llamada a la función
$p=a2($a,$b);
# leemos el array devuelto desde fuera de la función
foreach($p as $clave=>$valor){
echo "El valor de a (3) elevado a: ",$clave," es: ",$valor,"<br>";
}
echo "<br>";
# otra forma de leer el array con los resultados de la función
list($r,$s,$t)=a2($a,$b);
echo "Este es el valor recogido en la variable r :",$r,"<br>";
echo "Este es el valor recogido en la variable s :",$s,"<br>";
echo "Este es el valor recogido en la variable t :",$t,"<br>";
?>
ejemplo161.php