Una solución podría ser utilizar la función debug_backtrace
: en la traza, ese tipo de información debería estar presente.
O, como señaló Gordon en un comentario, también puede usar debug_print_backtrace
si solo desea generar esa información y no trabajar con ella.
Por ejemplo, con temp.php
que contiene lo siguiente:
<?php
include 'temp-2.php';
my_function();
y con temp-2.php
que contiene lo siguiente:
<?php
function my_function() {
var_dump(debug_backtrace());
}
Calling temp.php
(i.e. the first script)
de mi navegador me pone esta salida:
array
0 =>
array
'file' => string '/.../temp/temp.php' (length=46)
'line' => int 5
'function' => string 'my_function' (length=11)
'args' =>
array
empty
Ahí, tengo el nombre de archivo "temp.php
", que es el nombre en el que se ha llamado a la función.
Por supuesto, usted tiene que probar un poco más (especialmente en situaciones en las que la función no se encuentra en el "primer nivel" archivo incluido, pero en un archivo incluido por otro - no estoy seguro debug_backtrace
ayudará mucho, allí ...); pero esto podría ayudarle a obtener una primera idea ...
¿Podrían darnos más información sobre por qué y con qué propósito necesitarían tal funcionalidad? y? Puede ser que estés abordando un problema desde el lado equivocado. – Gordon