Estas palabras tienen un significado especial en PHP. Algunas representan cosas que se parecen a funciones, otras se parecen a constantes, etc.; pero no lo son en realidad: son constructores del lenguaje. No se puede usar ninguna de las siguientes palabras como constantes, nombres de clases, nombres de funciones o métodos. Se pueden usar como nombres de variables, pero podría dar lugar a confusiones.
A partir de PHP 7.0.0, estas palabras reservadas están permitidas como nombres de propiedades, de constantes y de métodos de clases, interfaces y rasgos, excepto que class no puede utilizarse como nombre de constante.
__halt_compiler() | abstract | and | array() | as |
break | callable (a partir de PHP 5.4) | case | catch | class |
clone | const | continue | declare | default |
die() | do | echo | else | elseif |
empty() | enddeclare | endfor | endforeach | endif |
endswitch | endwhile | eval() | exit() | extends |
final | finally (a partir de PHP 5.5) | for | foreach | function |
global | goto (a partir de PHP 5.3) | if | implements | include |
include_once | instanceof | insteadof (a partir de PHP 5.4) | interface | isset() |
list() | namespace (a partir de PHP 5.3) | new | or | |
private | protected | public | require | require_once |
return | static | switch | throw | trait (a partir de PHP 5.4) |
try | unset() | use | var | while |
xor | yield (a partir de PHP 5.5) | yield from (a partir de PHP 7.0) |
__CLASS__ | __DIR__ (a partir de PHP 5.3) | __FILE__ | __FUNCTION__ | __LINE__ | __METHOD__ |
__NAMESPACE__ (a partir de PHP 5.3) | __TRAIT__ (a partir de PHP 5.4) |