Categoria: Programacion Tema: Php Titulo: Funciones en PHP
Fecha del Tema: 2013-04-21 17:56:44Funciones en PHP La sintaxis para la definición de una función en PHP es: <?php function [nombre de la función]([parámetros]) { [algoritmo] } ?> Implementaremos una función que muestre un mensaje centrado en patalla, y la llamaremos posteriormente dos veces: <html> <head> <title>Problema</title> </head> <body> <?php function mensajecentrado($men) { echo "<table width="100%" border="1">"; echo "<tr><td align="center">"; echo $men; echo "</tr></td>"; echo "</table>"; } mensajecentrado("Primer recuadro"); echo "<br>"; mensajecentrado("Segundo recuadro"); ?> </body> </html> Para mostrar el texto centrado en un recuadro utilizamos la marca table de HTML. Definimos las propiedades border con 1, para que sea visible y el ancho de 100% para que ocupe todo el navegador. La tabla tiene una fila a la que definimos con la marca tr (table row) y un solo dato en esa fila mediante la marca td (table data). Para que el texto dentro de la tabla salga centrado, inicializamos la propiedad align de la marca td. Si vemos la función, notamos que lo más trabajoso es definir todas las marcas HTML para crear la tabla. Es importante notar que en PHP para introducir las dobles comillas dentro de un string debemos antecederle el caractér ` `; para introducir el caracter ` ` debemos tipear \. Las llamadas a la función las hacemos por medio de su nombre y pasándole el único parámetro querequiere: <?php mensajecentrado("Primer recuadro"); echo "<br>"; mensajecentrado("Segundo recuadro"); ?> Las funciones nos permiten tener un programa más ordenado y facilitan la reutilización del código. Más adelante veremos como hacer archivos con rutinas comunes a muchas páginas. Una función puede retornar un dato, supongamos que necesitamos una función que nos retorne el promedio de dos valores, el código sería: <html> <head> <title>Problema</title> </head> <body> <?php function retornarpromedio($valor1,$valor2) { $pro=$valor1/$valor2; return $pro; } $v1=100; $v2=50; $p=retornarpromedio($v1,$v2); echo $p; ?> </body> </html> Cuando una función retorna un dato debemos emplear la palabra clave return seguida del valor que devuelve. En la llamada a la función el valor retornado se almacena generalmente en una variable: <?php $p=retornarpromedio($v1,$v2); ?> Si queremos que retorne más de un dato debemos emplear parámetros por referencia. Supongamos que necesitamos ahora que una función nos retorne el cuadrado y cubo de un número: <html> <head> <title>Problema</title> </head> <body> <?php function cuadradocubo($valor,&$cuad,&$cub) { $cuad=$valor*$valor; $cub=$valor*$valor*$valor; } cuadradocubo(2,$c1,$c2); echo "El cuadrado de 2 es:".$c1."<br>"; echo "El cubo de 2 es:".$c2; ?> </body> </html> Es decir, cuando le antecedemos el caractér ampersand al parámetro, es por referencia. El objetivo es asignarle cierto valor al parámetro y posteriormente el dato quedará almacenado en la variable que le pasamos a la función. <?php function cuadradocubo($valor,&$cuad,&$cub) { $cuad=$valor*$valor; $cub=$valor*$valor*$valor; } ?> El parámetro $cuad se almacena en la variable $c1 y el parámetro $cub se almacena en $c2. Es la forma más adecuada de modificar variables dentro de una función.
Funciones en PHP La sintaxis para la definición de una función en PHP es: <?php function [nombre de la función]([parámetros]) { [algoritmo] } ?> Implementaremos una función que muestre un mensaje centrado en patalla, y la llamaremos posteriormente dos veces: <html> <head> <title>Problema</title> </head> <body> <?php function mensajecentrado($men) { echo "<table width="100%" border="1">"; echo "<tr><td align="center">"; echo $men; echo "</tr></td>"; echo "</table>"; } mensajecentrado("Primer recuadro"); echo "<br>"; mensajecentrado("Segundo recuadro"); ?> </body> </html> Para mostrar el texto centrado en un recuadro utilizamos la marca table de HTML. Definimos las propiedades border con 1, para que sea visible y el ancho de 100% para que ocupe todo el navegador. La tabla tiene una fila a la que definimos con la marca tr (table row) y un solo dato en esa fila mediante la marca td (table data). Para que el texto dentro de la tabla salga centrado, inicializamos la propiedad align de la marca td. Si vemos la función, notamos que lo más trabajoso es definir todas las marcas HTML para crear la tabla. Es importante notar que en PHP para introducir las dobles comillas dentro de un string debemos antecederle el caractér ` `; para introducir el caracter ` ` debemos tipear \. Las llamadas a la función las hacemos por medio de su nombre y pasándole el único parámetro querequiere: <?php mensajecentrado("Primer recuadro"); echo "<br>"; mensajecentrado("Segundo recuadro"); ?> Las funciones nos permiten tener un programa más ordenado y facilitan la reutilización del código. Más adelante veremos como hacer archivos con rutinas comunes a muchas páginas. Una función puede retornar un dato, supongamos que necesitamos una función que nos retorne el promedio de dos valores, el código sería: <html> <head> <title>Problema</title> </head> <body> <?php function retornarpromedio($valor1,$valor2) { $pro=$valor1/$valor2; return $pro; } $v1=100; $v2=50; $p=retornarpromedio($v1,$v2); echo $p; ?> </body> </html> Cuando una función retorna un dato debemos emplear la palabra clave return seguida del valor que devuelve. En la llamada a la función el valor retornado se almacena generalmente en una variable: <?php $p=retornarpromedio($v1,$v2); ?> Si queremos que retorne más de un dato debemos emplear parámetros por referencia. Supongamos que necesitamos ahora que una función nos retorne el cuadrado y cubo de un número: <html> <head> <title>Problema</title> </head> <body> <?php function cuadradocubo($valor,&$cuad,&$cub) { $cuad=$valor*$valor; $cub=$valor*$valor*$valor; } cuadradocubo(2,$c1,$c2); echo "El cuadrado de 2 es:".$c1."<br>"; echo "El cubo de 2 es:".$c2; ?> </body> </html> Es decir, cuando le antecedemos el caractér ampersand al parámetro, es por referencia. El objetivo es asignarle cierto valor al parámetro y posteriormente el dato quedará almacenado en la variable que le pasamos a la función. <?php function cuadradocubo($valor,&$cuad,&$cub) { $cuad=$valor*$valor; $cub=$valor*$valor*$valor; } ?> El parámetro $cuad se almacena en la variable $c1 y el parámetro $cub se almacena en $c2. Es la forma más adecuada de modificar variables dentro de una función.