Constantes mágicas

Existen varias constantes mágicas que cambian dependiendo de dónde se utilicen. Por ejemplo, el valor de __LINE__ depende de la línea en la que se use en el script. Todas estas constantes "mágicas" se resuelven en tiempo de compilación, a diferencia de las constantes regulares, que se resuelven en tiempo de ejecución. Estas constantes especiales no distinguen entre mayúsculas y minúsculas y son las siguientes:

Constantes mágicas de PHP
Nombre Descripción
__LINE__ El número de línea actual del archivo.
__FILE__ La ruta completa y el nombre del archivo con los enlaces simbólicos resueltos. Si se usa dentro de un include, se devuelve el nombre del archivo incluido.
__DIR__ El directorio del archivo. Si se usa dentro de un include, se devuelve el directorio del archivo incluido. Es equivalente a dirname(__FILE__). El nombre del directorio no incluye la barra final a menos que sea el directorio raíz.
__FUNCTION__ El nombre de la función, o {closure} para las funciones anónimas.
__CLASS__ El nombre de la clase. El nombre de la clase incluye el espacio de nombres en el que fue declarada (p. ej. Foo\Bar). Cuando se usa en un método de trait, __CLASS__ es el nombre de la clase en la que se utiliza el trait.
__TRAIT__ El nombre del trait. El nombre del trait incluye el espacio de nombres en el que fue declarado (p. ej. Foo\Bar).
__METHOD__ El nombre del método de la clase.
__PROPERTY__ Solo es válido dentro de un hook de propiedad. Es igual al nombre de la propiedad.
__NAMESPACE__ El nombre del espacio de nombres actual.
ClassName::class El nombre completo cualificado de la clase.