a como tu lo quieres no es posible, por que sucede lo siguiente...
- cuando no declaras una constante y la usas, como
TITLE ... si el reporte de errores esta desactivado, entonces se toma textual "
TITLE" ... ese es un error
- si quieres usar el valor textual de la constante, como "
GANARDINERO" pero sin comillas... pues ese es otro error
¿porque?
porque la constante
GANARDINERO si existe, ya que la has definido antes de emplearla... además, el no estar activado el reporte de errores te impide ver con claridad lo que en realidad estas haciendo...
entonces, es por eso que se te concatenaba textualmente
TITLE y tomaba el valor de la constante
GANARDINERO resultando algo extraño...
NOTA que cualquier expresión textual del lenguaje, ya sea para definir una variable o constante es abstracta... osea, solo es usada para representar valores (
como el álgebra)
si deseas obtener el "
valor", o bien, el nombre de una variable o constante, es completamente imposible.... solo puedes accesar a sus valores
pero si aún necesitas el valor textual, entonces usa comillas... para obtener dicho valor literal en tus expresiones... esa es una cadena de caracteres
no hay de otra, no hay modo... es una característica de todos los lenguajes, por lo tanto tu problema es de programación general... no PHP!!
y recuerda, no existen funciones mágicas que solucionan toda ocurrencia humana, y si estabas buscando una solución practica y real a esto... siempre fue
constant()
Código PHP:
define('B', 'C');
define('BBC', 'de Londres');
$A = B;
$B = 'A';
// MAL
$C = constant(B . B . $A);
echo "<p>$C</b>";
// BIEN
$C = constant("B" . 'B' . $A);
echo "<p>$C</b>";