Inicio > php, Programming, Tips > Constantes Mágicas de PHP

Constantes Mágicas de PHP

Martes, 18 de enero de 2011 Dejar un comentario Ir a comentarios
Constantes mágicas de PHP

Constantes mágicas de PHP

Hola compañeros elePHPantes! ¿cómo andan ustedes hoy? Pues aquí venimos para comentaros esto de las constantes mágicas de PHP. Seguro que ya habéis oído hablar de ellas, pero esta mañana estaba PHPeleando y  he necesitado una, de modo que creo que merece la pena hacerle un huequecillo.

Y es que en ocasiones necesitamos saber donde está el código que estamos ejecutando, y no hablo solo del fichero o directorio, que también, sino de algo un poco más específico. Veamos a cómo podes saber qué función está siendo lanzada, qué método, clase, o incluso, !número de línea de código!

Aquí os dejo un listado con su correspondiente descripción de estas maravillosas variables.

__LINE__

Linea actual del fichero

__FILE__

Ruta completa y nombre del fichero que está siendo ejecutado. Si la estamos usando dentro de un include, nos devolverá el nombre del fichero del include. Desde la versión 4.0.2 de PHP, esta variable siempre contiene la ruta absoluta con symlinks resuletos. En versiones anteriores contenía la ruta relativa según el contexto.

__DIR__

Nombre del directorio del archivo en ejecución. Si se usa dentro de un include, nos devolverá el directorio del fichero incluido. Es equivalente a dirname(__FILE__). El nombre del directorio no lleva la barra inicial a no ser que esté en el directorio root. (Fue añadida en PHP 5.3.0)

__FUNCTION__

Nombre de la función. Esta es la  causante de este post :P . Fue añadida en la versión 4.3.0 de PHP. Es sensible a mayúsculas. En PHP 4 su valor era devuelto en minúsculas.

__CLASS__

Nombre de la clase. Fue añadida en PHP 4.3.0. Como en PHP 5, esta constante devuelve el nombre de la clase donde está declarada. Es sensible a mayúsculas  y al igual que __FUNCTION__, en PHP 4 su valor era devuelta en minúsculas.

__METHOD__

Nombre del método de la clase. Añadido en PHP 5.0.0. Es sensible a mayúsculas.

__NAMESPACE__

Nombre del espacio de nombres actual. Al igual que las anteriores, es sensible a mayúsculas. Esta constante se define en tiempo de compilación. Fue agregada en PHP 5.3.0.

Pues esto es todo. Es algo que nunca sabemos cuando nos puede venir bien. En nuestro caso nos ha ayudado a llevar un array de sesión común para 3 funciones diferentes que interactuaban entre ellas. Otras formas de usarlas… dejad volar vuestra imaginación y seguro que cuando menos os lo esperéis, tenéis que echar mano de estas maravillosas constantes :D

Un saludo y muchas gracias por vuestra atención ;)

Features Stats Integration Plugin developed by YD