Capítulo 17. Funciones

Tabla de contenidos
Funciones definidas por el usuario
Parámetros de las funciones
Devolviendo valores
Funciones variables
Funciones internas (incorporadas)

Funciones definidas por el usuario

Una función se puede definir con la siguiente sintaxis:

Ejemplo 17-1. Psuedo código para demostrar el uso de funciones

<?php
function foo ($arg_1, $arg_2, ..., $arg_n)
{
    echo
"Funci&oacute;n de ejemplo.\n";
    return
$retval;
}
?>

Cualquier instrucción válida de PHP puede aparecer en el cuerpo de la función, incluso otras funiones y definiciones de clases.

En PHP3, las funciones deben definirse antes de que se referencien. En PHP4 no existe tal requerimiento.Excepto cuando una función es definida condicionalmente como en los ejemplos siguientes.

Cuando una función es definida condicionalmente como se puede ver en estos dos ejemplos, su definición debe ser procesada antes que sea llamada.

Ejemplo 17-2. Funciones Condicionales

<?php

$makefoo
= true;

/* We can't call foo() from here
   since it doesn't exist yet,
   but we can call bar() */

bar();

if (
$makefoo) {
  function
foo ()
  {
    echo
"I don't exist until program execution reaches me.\n";
  }
}

/* Now we can safely call foo()
   since $makefoo evaluated to true */

if ($makefoo) foo();

function
bar()
{
  echo
"I exist immediately upon program start.\n";
}

?>

Ejemplo 17-3. Funciones dentro de funciones

<?php
function foo()
{
  function
bar()
  {
    echo
"I don't exist until foo() is called.\n";
  }
}

/* We can't call bar() yet
   since it doesn't exist. */

foo();

/* Now we can call bar(),
   foo()'s processesing has
   made it accessible. */

bar();

?>

PHP no soporta la redefinición de funciones previamente declaradas.

Nota: Los nombres de funciones se pueden llamar con mayusculas o minusculas, aunque es una buena costumbre el llamar a las funciones tal y como aparecen en su definición.

PHP3 no soporta un número variable de parámetros, aunque sí soporta parámetros por defecto (ver Valores por defecto de de los parámetros para más información). PHP4 soporta ambos: ver Listas de longitud variable de parámetros y las referencias de las funciones func_num_args(), func_get_arg(), y func_get_args() para más información.

Hosting by: hurra.com
Generated: 2007-01-26 18:00:54