DICCIONARIO · F

Función PHP

Una función PHP es un bloque de código con nombre, declarado con la palabra clave function, que recibe parámetros, ejecuta una tarea y puede devolver un resultado con return. Sirve para no repetir código: escribes la lógica una vez y la llamas donde la necesites, lo que hace el programa más legible, reutilizable y fácil de probar.

Germán Gutiérrez Escrito por 6 min de lectura
Ficha rápida
Declaración
Palabra clave function, nombre, parámetros entre paréntesis y cuerpo entre llaves
Nombres
Empiezan por letra o guion bajo; no distinguen mayúsculas de minúsculas (A-Z ASCII)
Funciones flecha
Disponibles desde PHP 7.4 (sintaxis fn)
Callable de primera clase
Sintaxis strlen(...) disponible desde PHP 8.1
Redefinición
PHP no permite sobrecargar ni redefinir una función ya declarada
Versiones con soporte
PHP 8.2, 8.3, 8.4 y 8.5 (8.2 recibe parches de seguridad hasta el 31/12/2026)

≡En resumen

  • Una función PHP agrupa instrucciones bajo un nombre para ejecutarlas tantas veces como quieras con distintos datos.
  • Se declara con function, puede recibir parámetros tipados y devolver un valor con return.
  • PHP incluye de serie una enorme biblioteca de funciones nativas (strlen, array_map, date…) y tú puedes definir las tuyas.
  • Además de las funciones con nombre existen las anónimas (closures), las funciones flecha y los callables de primera clase.
  • El archivo functions.php de WordPress no es una función: es un archivo del tema donde se declaran funciones.

01 ¿Qué es una función en PHP?

El concepto viene de las matemáticas y de la programación estructurada: dividir un problema grande en piezas pequeñas con una responsabilidad clara. En el lenguaje PHP, que se ejecuta en el servidor, las funciones son la unidad básica para organizar la lógica de la parte back end de una web: validar formularios, calcular precios, consultar la base de datos o formatear fechas.

Parte Ejemplo Para qué sirve
Palabra clave function Indica a PHP que empieza una declaración
Nombre precioConIva Identifica la función para llamarla
Parámetros (float $precio) Datos que recibe; pueden llevar tipo y valor por defecto
Tipo de retorno : float Declara qué devuelve (opcional, recomendable)
Cuerpo { … } Instrucciones que se ejecutan al llamarla
return return $precio * 1.21; Devuelve el resultado y termina la función
Anatomía de una función PHP

02 Cómo declarar y llamar una función PHP

  1. 1

    Elige un nombre descriptivo

    Debe empezar por una letra o un guion bajo y seguir con letras, números o guiones bajos. Usa un verbo que diga qué hace: calcularTotal, enviarEmail, formatearFecha.

  2. 2

    Define los parámetros

    Entre paréntesis, separados por comas. Desde PHP 7 puedes indicar su tipo (int, string, array, bool…) y desde PHP 8 usar tipos unión como int|float.

  3. 3

    Escribe el cuerpo

    Entre llaves, las instrucciones que resuelven la tarea. Una función debería hacer una sola cosa y hacerla bien.

  4. 4

    Devuelve el resultado

    Con return. Si no hay return, la función devuelve null. Puedes declarar el tipo de retorno tras los dos puntos, o void si no devuelve nada.

  5. 5

    Llámala

    Escribe su nombre seguido de paréntesis con los argumentos: $total = calcularTotal($carrito);

Ejemplo · Función con tipos, valor por defecto y return

function saludar(string $nombre, string $saludo = 'Hola'): string {
return "$saludo, $nombre";
}

echo saludar('Lucía'); muestra «Hola, Lucía» y echo saludar('Lucía', 'Buenos días'); muestra «Buenos días, Lucía». El segundo parámetro es opcional porque tiene un valor por defecto.

03 Parámetros, argumentos y valores de retorno

Los parámetros son las variables que declara la función; los argumentos, los valores concretos que le pasas al llamarla. PHP ofrece varias formas de recibirlos, y elegir bien evita errores difíciles de rastrear.

Técnica Sintaxis Qué hace Desde
Por valor function f($x) La función trabaja con una copia; el original no cambia Siempre
Por referencia function f(&$x) La función modifica la variable original Siempre
Valor por defecto function f($x = 10) El argumento pasa a ser opcional Siempre
Variádicos function f(...$numeros) Acepta un número variable de argumentos en un array PHP 5.6
Tipos escalares y de retorno function f(int $x): int PHP comprueba el tipo de entrada y salida PHP 7.0
Argumentos con nombre f(precio: 100, iva: 21) Pasas argumentos por nombre, en cualquier orden PHP 8.0
Formas de pasar datos a una función PHP

04 Tipos de funciones en PHP

01

Definidas por el usuario

Las que declaras tú con function para resolver la lógica de tu proyecto: calcular portes, validar un NIF, generar un slug.

02

Nativas o internas

Vienen con PHP y se usan sin declararlas: strlen(), str_contains(), array_filter(), date(), json_encode(). El manual las lista por extensión.

03

De extensiones

Funciones que solo existen si la extensión está instalada y activada en el servidor, como las de mysqli, gd (imágenes) o curl.

04

Anónimas (closures)

Funciones sin nombre que se guardan en una variable o se pasan como argumento: function ($x) use ($iva) { … }. Útiles como callbacks.

05

Funciones flecha

Versión corta de las anónimas desde PHP 7.4: fn($x) => $x * 2. Capturan automáticamente las variables del ámbito exterior.

06

Callables de primera clase

Desde PHP 8.1, strlen(...) crea un objeto Closure a partir de cualquier función o método para pasarlo como valor.

En proyectos modernos casi nunca escribirás funciones sueltas: se agrupan en clases (métodos) y se organizan con frameworks como Laravel, que ya traen decenas de funciones auxiliares (helpers). Aun así, entender la función es la base para leer cualquier código PHP, incluido el que expone o consume una API.

05 functions.php en WordPress: no es lo mismo que una función

  • ✓Edita el functions.php de un tema hijo, no el del tema principal: si no, perderás los cambios en la próxima actualización.
  • ✓Pon un prefijo único a tus funciones (por ejemplo, miweb_) para no chocar con las de plugins y evitar el error «Cannot redeclare».
  • ✓Haz copia de seguridad antes de tocarlo: un punto y coma olvidado puede dejar la web en blanco.
  • ✓Si el código es una funcionalidad y no algo visual, llévalo a un plugin propio para que no dependa del tema.

Si no sabes cómo crear uno, repasa qué es un tema hijo. Y si estas modificaciones se acumulan, conviene incluirlas en un plan de mantenimiento web con copias y entorno de pruebas.

06 Errores frecuentes con funciones PHP y cómo resolverlos

Error Causa probable Solución
Call to undefined function La función no está declarada, el archivo no se ha incluido o falta la extensión Revisa el nombre, el include/require o activa la extensión en php.ini
Cannot redeclare Dos funciones con el mismo nombre, o un archivo incluido dos veces Usa require_once, prefijos o namespaces
ArgumentCountError Faltan argumentos obligatorios Pasa todos los argumentos o define valores por defecto
TypeError El argumento o el retorno no coincide con el tipo declarado Corrige el dato o el tipo declarado
Maximum function nesting / stack Recursión sin condición de parada Añade un caso base; el manual avisa de que más de 100-200 niveles pueden romper la pila
Mensajes de error típicos

07 Buenas prácticas para escribir funciones PHP

  • ✓Una responsabilidad por función y nombres que describan la acción.
  • ✓Declara tipos de parámetros y de retorno, y activa strict_types.
  • ✓Pocos parámetros: si necesitas más de tres o cuatro, pasa un objeto o un array con nombre.
  • ✓Evita variables globales: recibe lo que necesites por parámetro.
  • ✓Documenta con PHPDoc lo que no se deduzca de la firma.
  • ✓Escribe pruebas unitarias (PHPUnit o Pest) para las funciones con lógica de negocio.

Cuando un proyecto crece, estas prácticas marcan la diferencia entre un código que se mantiene y uno que hay que rehacer. Si necesitas una plataforma con esa base, nuestro equipo se dedica al desarrollo de aplicaciones web a medida en PHP y Laravel; para webs corporativas, trabajamos el diseño y desarrollo web completo.

Preguntas frecuentes sobre Función PHP

Es un bloque de código con nombre que recibe parámetros, realiza una tarea y puede devolver un valor con return. Se declara una vez y se llama tantas veces como haga falta.

Con la palabra clave function, el nombre, los parámetros entre paréntesis y el cuerpo entre llaves, por ejemplo: function sumar(int $a, int $b): int { return $a + $b; }.

El parámetro es la variable que declara la función ($precio); el argumento es el valor que le pasas al llamarla (100).

Devuelve null. Si declaras el tipo de retorno void, indicas explícitamente que no devuelve nada.

No. Los nombres de función no distinguen mayúsculas en los caracteres A-Z, aunque se recomienda llamarlas exactamente como se declararon. Las variables, en cambio, sí las distinguen.

Es una función sin nombre, también llamada closure, que se guarda en una variable o se pasa como argumento a otra función, por ejemplo a array_map.

Es un archivo del tema que WordPress carga automáticamente y donde se declaran funciones para añadir o modificar funcionalidades. Conviene editarlo en un tema hijo.

En el manual oficial de php.net, que tiene un índice de funciones y métodos agrupados por extensión, con ejemplos y el historial de cambios de cada una.

Fuentes consultadas

Germán Gutiérrez

Sobre el autor

Development Manager en appyweb

Dirige el equipo de desarrollo de appyweb: aplicaciones web y móviles, SaaS, integraciones y arquitectura de software.

Ver perfil en LinkedIn ↗

Términos relacionados

Ver todos los términos →
P PHP PHP es un lenguaje de programación de código abierto que se ejecuta en el servidor y está pensado para crear páginas y aplicaciones web dinámicas. Rasmus Lerdorf lo creó en 1994 y hoy lo usa cerca del 70 % de las webs cuyo lenguaje de servidor se conoce, entre ellas todas las hechas con WordPress y con Laravel. L Laravel Laravel es un framework de código abierto para PHP, creado por Taylor Otwell en 2011, que da una estructura MVC y herramientas listas (rutas, base de datos, colas, autenticación) para construir aplicaciones web y APIs. Sirve para desarrollar software a medida más rápido, con código ordenado y fácil de mantener por cualquier equipo PHP. B Back end El back end es la parte de una web o aplicación que se ejecuta en el servidor y que el usuario no ve: la lógica de negocio, la base de datos, la autenticación y las API que entregan la información al navegador o a la app. Sin back end no hay registros, pagos, búsquedas ni contenidos dinámicos. A API Una API (Application Programming Interface, interfaz de programación de aplicaciones) es un conjunto de reglas y puntos de acceso que permite que dos programas se comuniquen: uno pide datos o acciones y el otro responde en un formato acordado, sin que ninguno conozca el código interno del otro. Es lo que conecta webs, apps, pasarelas de pago e inteligencia artificial. J JavaScript JavaScript es un lenguaje de programación interpretado o compilado al vuelo, dinámico y basado en prototipos, que los navegadores ejecutan para hacer interactivas las páginas web. Junto a HTML y CSS forma la base de la web: lo usa el 98,9 % de los sitios, y con Node.js también sirve para servidores y aplicaciones. T Tema hijo WordPress Un tema hijo de WordPress (child theme) es un tema que hereda plantillas, estilos y funciones de otro tema, el tema padre, y solo contiene los archivos que modificas. Se crea con una carpeta y un style.css cuya cabecera Template apunta al padre, y permite personalizar la web sin perder los cambios al actualizar el tema padre.