3.- Funciones

¿Qué son las funciones?

Las funciones son básicas a la hora de programar, y nos permiten ahorrarnos muchas líneas de código. Si tenemos un código que vamos a utilizar muchas veces a lo largo de un script, podemos hacernos una función, de esta manera, en vez de repetir varias veces un texto de 50 líneas a lo largo de un script, hacemos una función y después simplemente llamaremos a la función cuando la necesitemos.

Vamos a ver un ejemplo que vi hace mucho tiempo en un manual de fundamentos de programación.

Supongamos que tenemos un robot, y que queremos que suba unas escaleras. Como ya sabemos, en programación algo tan simple como

Robot sube la escalera

No sirve, si funcionase, los programadores no tendrían trabajo, así que hay que subir escalón por escalón

Robot sube un escalón
Robot sube un escalón
Robot sube un escalón

Ahora supón que la escalera tiene 150 escalones, ¿mucho código eh?. Pero podemos solucionarlo con bucle.


$Cuenta_escalones = 50;
$escalon = 0;
While ($escalon < $Cuenta_escalones) {
Robot sube un escalon
}

Ahora supón que a lo largo de tu script, tu robot tiene que subir 50 escaleras, tendrías que escribir mucho código no?

Además si cambia el número de escalones que tiene que subir el robot tendrías que buscarlo por todo el script, así que es el sitio perfecto para hacerte una función:


function escalon () {
$Cuenta_escalones = 50;
$escalon = 0;
While ($escalon < $Cuenta_escalones) {
Robot sube un escalon
}

}

Ahora, cada vez que quieras subir escaleras, sólo tendrías que escribir escalon() y si quieres cambiar el número de escalones, sólo tendrías que cambiarlo en un sitio: en la función.

Las funciones en PHP

PHP es un lenguaje muy flexible, además de dejarte crear tus propias funciones, tiene incorporadas cientos de funciones ya listas que te dejan hacer de todo, desde ordenar cosas alfabéticamente hasta mandar correos electrónicos. Las funciones creadas por el usuario y las funciones de la librería de funciones de PHP funcionan exactamente igual.

Para crear una función

<?php
function MiFuncion ()
{
Instrucciones;
}
?>

Vamos a estudiar el tema creando un par de funciones. Las funciones pueden ser de dos tipos, las que necesitan “parámetros” y las que no. Los “parámetros” son variables que vienen de fuera de la función, pero que la función necesita para poder funcionar.

Primero vamos a ver una función que no necesita parámetos

<?php // empieza el código php

function titulo() // creamos la función título

{  // empieza el contenido de la función

echo ("<h1> Página de tomatoma</h1>");  // lo que hace la función

} // termina el contenido de la función

/*  llamamos a la función: le decimos a php que haga lo que le dijimos al definir la función */

titulo();

?>  // se termina el código php

Ahora puedes utilizar la función titulo() en cualquier parte del documento (siempre que recuerdes meterlo dentro de las etiquetas <?php and ?>. Lo cual te puede ahorrar mucho trabajo.

Ahora veamos como hacer un script con parámetros. Supongamos que queremos pedir un préstamos a un banco. Pero antes de lanzarnos de cabeza. Queremos saber cuanto vamos a tener que pagar al mes.

Para hacerlo vamos a crear una página Multiuso (ver el tema anterior), que primero nos presenta un formulario preguntándonos el importe total del préstamo y el interés que nos van cobrar.

Una vez que tengamos esos datos crearemos la función calcular que nos dirá que tendremos que pagar mensualmente en concepto de intereses utilizando la variable $coste y la variable $interés del formulario.

<html>
<head><title>Cálculo de Intereses</title></head>
<body>

<?php

/* Si no se ha fijado el coste o la condición */

if (!isset($coste) |!isset($interes)): ?>

// Aparece el formulario

<form action="interes.php" method="get">

Importe del Préstamo: <input type="text" name="coste">

Interés Mensual:  <input type="text" name="interes">

<p><input type="submit" name="submit" value="Calcular">

// En caso contrario
<?php else:

/* Escribimos la función, aunque podríamos haberla puesto en cualqueir otro lado */

function calcular($coste, $interes) {
$pago = ($coste * $interes / 100);

echo("Te toca pagar  $pago al mes!");

}

// llamamos a la función

calcular($coste, $interes);

Volver al índice

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s