Hola amigos, traigo una pequeña duda, es posible saber cuando una función es llamada por otra función de su misma clase? y cuando es llamada externamente?
Voy a dar un ejemplo sencillo con código para hacerme entender
Código PHP:
class saludo {
public function hola1($mensaje=NULL) {
echo "hola que tal";
echo $mensaje;
}
public function hola2() {
//llamada por fuera
return "hola como estas";
//llamada en otra función de la misma clase
return "hola carebola";
}
}
// AQUI LLAMAMOS UNA FUNCION DESDE AFUERA NORMALITO
$saludar = new saludo();
$saludar->hola1();
echo $saludar->hola2();
//RESULTADO
// hola que tal
// hola como estas
// AQUI LLAMAMOS UNA FUNCION DE LA CLASE DENTRO DE OTRA FUNCION DE LA MISMA CLASE
$saludar = new saludo();
$saludar->hola1($saludar->hola2());
//RESULTADO
// hola que tal
// hola carebola
Y es en el segundo ejemplo donde me gustaría saber en la función hola1() que se ha llamado una función de la misma clase pero dentro de la función hola1()
Esto es con el fin de que si utilizo una función por fuera (como siempre se utiliza) entonces me imprima un resultado, pero si la función es llamada en otra función de la misma clase entonces que haga otro proceso.
Creo que esa detección en el caso de este ejemplo se hace en hola2() pero..... no sé como hacerlo y no sé si sea posible hacer eso.
Salu2 y espero que me puedan dar una manito.