FUNCIONES.
Parte 3
En esta entrega vamos a aprender sobre los parámetros
en las funciones. Primero que nada es necesario mencionar que la información
que se le pasa a las funciones puede pasársele por medio de
una serie de constantes y/o variables separadas por comas, como ya
vimos en la entrega anterior. Los parámetros que se pasan a
las funciones pueden ser por valor,
por referencia y parámetros
por defecto.
Parámetros por
valor:
Por defecto, los parámetros
se pasan por valor. Esto significa que si el valor de la variable
que se pasa como parámetro a la función sufre algún
cambio en su valor dentro de la función, éste cambio
no afectará al valor original de la variable.
El ejemplo siguiente aclara
las dudas de mejor manera:
<?php
$original = "Esto es fuera
de la función";
function cambio($original){
$original = "Esto es dentro
de la función";
echo $original;
}
echo "Fuera de la función la variable es: ";
echo $original."<BR>";
echo "Dentro de la función,
la variable es: ";
cambio($original);
echo "<BR>Esto está
fuera de la función de nuevo: ";
echo $original;
?>
Lo anterior produce el siguiente resultado:
Parámetros
por referencia:
Cuando se pasan parámetros por referencia,
le damos autorización a la función (¿qué
tal?, ¡verso sin mucho esfuerzo!) de cambiar permanentemente
el valor original de la variable.
Para pasar siempre un parámetro por
referencia, basta con anteponer un ampersand (&) al nombre del
parámetro en la definición de la función de la
siguiente forma:
<?php
$original = "Esto es fuera de
la función";
function cambio_total(&$original){
$original = "Esto es dentro
de la función y fuera de la función";
echo $original;
}
echo "Fuera de la función
la variable es: ";
echo $original."<BR>";
echo "Dentro de la función,
la variable es: ";
cambio_total($original);
echo "<BR>Esto está
fuera de la función de nuevo: ";
echo $original;
?>
El código anterior produce la siguiente
salida:
Como
se darán cuenta, la variable $original cambia
definitivamente de valor al entrar al cuerpo de la función,
gracias a que su parámetro (es decir la variable $original)
se ha pasado por referencia.
Parámetros por defecto:
Los valores por defecto son expresiones constantes
y no variables, que se pasan a la función. Una observación
importante que debemos hacer, es que los parámetros por defecto
deben ser declarados a la derecha de cualquier parámetro que
no sea por defecto pasado a la función.
El ejemplo siguiente demuestra lo que significa
pasar un parámetro por defecto:
<?php
function por_defecto($autor, $libro
= "Cien años de soledad"){
return "El
libro es $libro y su autor es $autor";
}
echo por_defecto("Gabriel
García Márquez");
?>
Como ya habán imaginado, lo anterior
produce la siguiente salida:

Muy bien, en cuanto a funciones, lo anterior
es lo más importante. Estamos seguros que con esto, sus programas
se volverán verdaderamente intensos e interesantes. En nuestra
próxima entrega, aprederemos sobre estilo y algunos consejos
de cómo hacer nuestros programas más profesionales y
documentados.
Por el momento, ¡hasta pronto!