Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jaka funkcja wywołała inną funkcję / metodę
Forum PHP.pl > Forum > Przedszkole
iksigrek
Jak sprawdzić która funkcja / metoda wywołała funkcję / metodę $x() ?

np. w kodzie:

  1. class test {
  2.  
  3. function $a() {
  4. $x();
  5. }
  6.  
  7. function $b() {
  8. $x();
  9. }
  10.  
  11. }


Chcę, by $x podało czy wywołała ją funkcja $a czy $b. Jednak bez użycia magicznej __FUNCTION__ podawanej jako parametr dla $x, albo debug_backtrace (zwraca zbyt wiele niepotrzebnych danych, a chodzi tylko o nazwę funkcji wywołującej [nadrzędnej] ).
Fifi209
A $x jest z tej klasy czy to jest coś dziedziczonego?

Z tego co pamiętam jest magiczna metoda __call() ale nigdy jej nie używałem.
iksigrek
zgadza się, ale wszystkie tego typu metody łapią tylko to, co jest inaccessible. Jeśli natomiast metoda istnieje i jest dostępna - to lipa.
erix
debug_backtrace?
iksigrek
Cytat
Jednak bez użycia magicznej __FUNCTION__ podawanej jako parametr dla $x, albo debug_backtrace (zwraca zbyt wiele niepotrzebnych danych, a chodzi tylko o nazwę funkcji wywołującej [nadrzędnej] ).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.