Funciones en PHP

| 2013-09-26 | No hay comentarios »

Al incrementarse el tamaño y la complejidad, es muy recomendable dividirlos en partes más pequeñas llamadas funciones. Cada función ejecuta una tarea específica. Cuando el programa necesita ejecutar la tarea llama a la función, proporcionándole la información que pudiera necesitar para realizar su procesamiento.

Aquí daremos el ejemplo de creación de una función que, llamada al comienzo de nuestro script, nos crea el encabezado de nuestro documento HTML y coloca el titulo que queremos a la página:

<?php
function hacer_encabezado($titulo)
{
$encabezado="<html><head>t<title>$titulo</title></head>";
echo $encabezado;
}
?>

Esta función podría ser llamada al principio de todas nuestras páginas de la siguiente forma:

$titulo="Mi web";
hacer_encabezado($titulo);

Estos archivos en los que se guardan las funciones se llaman librerías. La forma de incluirlos en nuestro script es a partir de la instrucción require o include:

require_once(«libreria.php») o include(«libreria.php»)

En resumen, la cosa quedaría así:

Tendríamos un archivo libreria.php como sigue

<?php
 //función de encabezado y colocación del titulo
 function hacer_encabezado($titulo)
 {
 $encabezado="<html>n<head>nt<title>$titulo</title>n</head>n";
 echo $encabezado;
 }
 ?>

Por otra parte tendríamos nuestro script principal página.php (por ejemplo):

<?php
include("libreria.php");
$titulo="Mi Web";
hacer_encabezado($titulo);
?>
<body>
El cuerpo de la página
</body>
</html>

Los parámetros se pasan por valor

El paso de parámetros en PHP se realiza por valor. «Por valor» es una manera típica de pasar parámetros en funciones, quiere decir que el cambio de un dato de un parámetro no actualiza el dato de la variable que se pasó a la función. Por ejemplo, cuando invocamos una función pasando una variable como parámetro, a pesar de que cambiemos el valor del parámetro dentro de la función, la variable original no se ve afectada por ese cambio. Puede que se vea mejor con un ejemplo:

function porvalor ($parametro1){
$parametro1=»hola»;
echo «<br>» . $parametro1; //imprime «hola»
}

$mivariable = «esto no cambia»;
porvalor ($mivariable);
echo «<br>» . $mivariable; //imprime «esto no cambia»

Esta página tendrá como resultado:

hola
esto no cambia

Paso de parámetros por referencia

En contraposición al paso de parámetros por valor, está el paso de parámetros por referencia. En este último caso, el cambio del valor de un parámetro dentro de una función sí afecta al valor de la variable original.

Podemos pasar los parámetros por referencia si, en la declaración de la función, colocamos un «&» antes del parámetro.

<?php
function porreferencia(&$cadena)
{
$cadena = ‘Si cambia’;
}
$str = ‘Esto es una cadena’;
porreferencia ($str);
echo $str; // Imprime ‘Si cambia’
?>

Este script mostrará por pantalla ‘Si cambia’.

Parámetros por defecto

Podemos definir valores por defecto para los parámetros. Los valores por defecto sirven para que los parámetros contengan un dato predefinido, con el que se inicializarán si no se le pasa ningún valor en la llamada de la función. Los valores por defecto se definen asignando un dato al parámetro al declararlo en la función.

function pordefecto ($parametro1=»xx»;$parametro2=2)

Para la definición de función anterior, $parametro1 tiene como valor por defecto «pepe», mientras que $parametro2 tiene 3 como valor por defecto.

Más información sobre funciones: Aquí

Acerca del autor: Rodrigo Paszniuk

Ingeniero Informático, amante de la tecnología, la música, el ciclismo y aprender cosas nuevas.

Posts Relacionados

  • Phalcon – Framework PHP – Extensión de C
  • Manual intermedio de Yii framework (PHP)
  • Maestro-Detalle / Factura Compra en Yii – Parte II
  • Maestro-Detalle / Factura Compra en Yii – Parte I



SEGUÍNOS EN FACEBOOK


GITHUB