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 nameDe esto se derivan dos reglas prácticas:
- Las palabras clave no distinguen entre mayúsculas y minúsculas.
if,IFeIfsignifican lo mismo, por lo queECHO "hi";funciona. (Los nombres de variables y los nombres que defines tú sí distinguen entre mayúsculas y minúsculas.) - Las constantes como
true,falseynulltambié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ía | Palabras clave |
|---|---|
| Condicionales | if, else, elseif, endif, switch, case, default, endswitch, match |
| Bucles | for, endfor, foreach, endforeach, while, endwhile, do, break, continue |
| Funciones y generadores | function, fn, return, yield, use, static, global |
| Clases y OOP | class, interface, trait, enum, extends, implements, new, clone, abstract, final, public, protected, private, const, var, instanceof, insteadof |
| Espacios de nombres y carga automática | namespace, use, include, include_once, require, require_once |
| Manejo de errores | try, catch, finally, throw |
| Construcciones del lenguaje | echo, print, array, list, isset, unset, empty, die, exit, eval |
| Operadores lógicos | and, or, xor |
| Tipos y valores | true, false, null, callable, int, float, string, bool |
| Otros | as, 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 supportsUso 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 sí están permitidas como nombres de métodos, propiedades y constantes de clase (por ejemplo,
$object->list()oFoo::CONSTno se parsean, peroFoo::PRINTsí), aunque su uso perjudica la legibilidad. Prefiere un nombre más claro. echoyprintno 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.exitydieson idénticos. Ambos detienen el script inmediatamente;diees simplemente un alias.- No confundas
and/orcon&&/||. Las formas de palabras tienen menor precedencia, por lo que$ok = true and false;asignatrue, nofalse. 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:
- PHP Variables y PHP Data Types — cómo funcionan
var,arrayy las palabras clave de tipo. - PHP If...Else...Elseif y PHP Loops — las palabras clave de control de flujo.
- PHP Functions —
function,return,usey el ámbito. - PHP Classes and Objects — las palabras clave de OOP.
- PHP Constants y PHP Namespaces.
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.