Curso de PHP

Estás en: Sintaxis y Estructura : Funciones

Funciones

Sintaxis para crear una función

function nombrefuncion ([argumentos]) {
Instrucciones;
[return valor;]
}

Lo que va entre [] es opcional.
Vamos a tener funciones que nos devuelven un dato (con return).
Hay funciones que simplemente ejecutan unas operaciones. No tienen por qué devolver nada.
Sirven para mostrar algo en la página o crearlo.

Sintaxis para llamar a una función

nombrefuncion ();
nombrefuncion (parametros);

Las variables que se crean dentro de una función son locales.
Si queremos que sean globales, sería así:

function ... () {
global $nombrevariable;
$nombrevariable=valor;
}

Si queremos que una variable no se inicialice cada vez que se ejecute la función, le ponemos static delante:

funcion ... ($i) {
static $i=0;
$i = $i + 1;
}

Ejemplo

Crear una función que va a dibujar una tabla en la que va a poner Bienvenido.

function saludo (){
	echo "<table border=1>";
	echo "<tr><td> Bienvenido </td>";
	echo "</table>";
}

//Ejecutar la función para que muestre la tabla
saludo();

RESULTADO POR PANTALLA:
Bienvenido

Ejemplo

Crear una función donde le decimos a quién tiene que saludar.

function saludo ($nombre){
	echo "<table border=1>";
	echo "<tr><td> Bienvenido $nombre </td></tr>";
	echo "</table>";
}

//Ejecutar la función para que salude a la persona que hemos metido como parámetro
saludo("Pablo");
saludo("Víctor");

RESULTADO POR PANTALLA:
Bienvenido Pablo
Bienvenido Víctor

Ejemplo

Le pasamos 2 parámetros a la función.

function saludo2 ($nombre, $apellido){
	echo "<table border=1>";
	echo "<tr><td> Bienvenido $nombre $apellido</td></tr>";
	echo "</table>";
}

//Ejecutar la función para que salude a la persona que hemos metido como parámetro
saludo2("Pablo", "Pérez");

RESULTADO POR PANTALLA:
Bienvenido Pablo Pérez

Funciones con argumento opcional

Ejemplo

Si no le pasamos nada, va a coger Nombre1 y Apellido1 por defecto.

function saludo ($nombre="Nombre1", $apellido="Apellido1"){
	echo "<table border=1>";
	echo "<tr><td> Bienvenido $nombre $apellido</td></tr>";
	echo "</table>";
}

//Ejecutar la función para que salude a la persona que hemos metido como parámetro
saludo("Pablo"); // Mostrará Pablo Apellido1
saludo("Pablo", "Pérez");  // Mostrará Pablo Pérez

Ejemplo

Si se quieren pasar unos argumentos obligatorios y otros opcionales, privero van los obligatorios.

function saludo ($obligatorios, $opcionales="valorpordefecto"){

}