W3docs

Palabras clave de PHP

Las palabras clave son términos reservados en PHP que no pueden usarse como identificadores para variables, funciones, clases u otros elementos.

¿Qué son las palabras clave de PHP?

Las palabras clave son términos reservados a los que PHP asigna un significado integrado. Definen la estructura del lenguaje — condicionales, bucles, clases, manejo de errores y más — por lo que PHP las trata de forma diferente a los nombres que defines tú mismo. Esta página lista todas las palabras clave de PHP, explica las reglas que las rigen y muestra cómo se usan las más comunes.

Al ser reservadas, no puedes usar una palabra clave como identificador ordinario:

<?php
// These all cause a parse error — the words are reserved:
$list = [];        // OK: "list" is fine as a variable name in modern PHP...
function for() {}  // Parse error: "for" cannot be a function name
class If {}        // Parse error: "if" cannot be a class name

De esto se derivan dos reglas prácticas:

  • Las palabras clave no distinguen entre mayúsculas y minúsculas. if, IF e If significan lo mismo, por lo que ECHO "hi"; funciona. (Los nombres de variables y los nombres que defines tú sí distinguen entre mayúsculas y minúsculas.)
  • Las constantes como true, false y null también están reservadas. Se comportan como palabras clave aunque parezcan valores ordinarios.

Lista de palabras clave de PHP

La tabla a continuación agrupa las palabras clave por su función, lo que las hace mucho más fáciles de recordar que una lista plana.

CategoríaPalabras clave
Condicionalesif, else, elseif, endif, switch, case, default, endswitch, match
Buclesfor, endfor, foreach, endforeach, while, endwhile, do, break, continue
Funciones y generadoresfunction, fn, return, yield, use, static, global
Clases y OOPclass, interface, trait, enum, extends, implements, new, clone, abstract, final, public, protected, private, const, var, instanceof, insteadof
Espacios de nombres y carga automáticanamespace, use, include, include_once, require, require_once
Manejo de errorestry, catch, finally, throw
Construcciones del lenguajeecho, print, array, list, isset, unset, empty, die, exit, eval
Operadores lógicosand, or, xor
Tipos y valorestrue, false, null, callable, int, float, string, bool
Otrosas, declare, enddeclare, goto, __halt_compiler

El conjunto exacto crece lentamente entre versiones — match llegó en PHP 8.0, enum en PHP 8.1 y fn (funciones flecha) en PHP 7.4 — por lo que algunas entradas anteriores no están disponibles en versiones antiguas. Siempre puedes verificar una palabra en tiempo de ejecución en lugar de memorizar la lista:

<?php
var_dump(function_exists('array'));  // bool(false) — "array" is a language construct, not a function
echo PHP_VERSION, "\n";              // tells you which keywords your runtime supports

Uso de las palabras clave de PHP

Las palabras clave se combinan en las sentencias que forman cada programa. El ejemplo a continuación usa un condicional, un bucle y una definición de función juntos:

<?php

$x = 7;
// Define a conditional statement
if ($x == 5) {
    echo "x is equal to 5.";
}

// Define a loop
for ($i = 0; $i < 10; $i++) {
    echo $i;
}

// Define a function
function add($a, $b)
{
    return $a + $b;
}
?>

Aquí la palabra clave if inicia un condicional que comprueba si $x es igual a 5, for construye un bucle que va de 0 a 9, y function declara una rutina reutilizable que devuelve la suma de sus dos argumentos.

Errores comunes

  • Palabras reservadas como nombres de métodos o constantes. Desde PHP 7, la mayoría de las palabras clave están permitidas como nombres de métodos, propiedades y constantes de clase (por ejemplo, $object->list() o Foo::CONST no se parsean, pero Foo::PRINT sí), aunque su uso perjudica la legibilidad. Prefiere un nombre más claro.
  • echo y print no son funciones. echo "a", "b"; funciona (múltiples argumentos, sin paréntesis necesarios); son construcciones del lenguaje, por lo que no puedes usarlos como callbacks.
  • exit y die son idénticos. Ambos detienen el script inmediatamente; die es simplemente un alias.
  • No confundas and/or con &&/||. Las formas de palabras tienen menor precedencia, por lo que $ok = true and false; asigna true, no false. Usa && y || en las expresiones. Consulta PHP Operators para la tabla de precedencia.

Temas relacionados

Cada grupo de palabras clave tiene su propio capítulo con más detalles:

Conclusión

Las palabras clave de PHP son el vocabulario fijo del lenguaje: palabras reservadas, sin distinción de mayúsculas y minúsculas, que construyen condicionales, bucles, clases y manejo de errores. Saber qué palabras están reservadas te evita nombrar elementos de forma ilegal, y saber qué hace cada una te permite leer y escribir PHP con fluidez. Cuando tengas dudas, agrúpalas por propósito — como en la tabla anterior — en lugar de memorizarlas una por una.

Práctica

Práctica
¿Cuáles de las siguientes son palabras clave reservadas en PHP?
¿Cuáles de las siguientes son palabras clave reservadas en PHP?
Was this page helpful?