[php] plik, z którego wywołano funkcję

0

Mam do Was pytanie o alternatywę dla funkcji

debug_backtrace()

w celu zlokalizowania nazwy pliku, z którego została wywołana funkcja.

debug_backtrace() jest fajne, bo zawiera [file], ale i mnóstwo innych rzeczy, które są mi zbędne i obawiam się niepotrzebnego zapychania pamięci czy zasobów przy wielokrotnym jej wywołaniu.

0

FILE

0

Odpada, bo przy strukturze:

//core.php
function foo() {
// ciało funkcji
}
//test.php
include "core.php";
foo();

FILE zwróci core.php, a ja chcę żeby to było test.php :)

0

Jaki jest tego sens...
trzymane tak o na wierzchu to jest plik z samą funkcją i może plik, z którego wywołany jest skrypt(co w większości wypadków dawałoby index.php, kiedy sama funkcja wywoływna jest pewnie z jakiegoś innego includa)
Ty chcesz konkretny plik, z którego wywołana została funkcja... i niby skąd php miałoby wiedzieć o co Ci chodzi? Chcesz pierwsze info z listy backtrace i zdaje mi się, że inaczej jak wywołując backtrace tego nie zrobisz, to raz. Dwa... już po samym fakcie, że chcesz taką funkcję wywoływać często widać, że robisz coś wspak i niepoprawnie... co chcesz tym osiągnąć?

0

Przy debugowaniu nie patrzy się na pamięć - bo nie debuguje się w finalnym release, chyba że występują jakieś błędy. Zastanów się: Jak zobaczysz że w pliku test.php funkcja foo() wywołuje błąd to i tak spojrzysz w jej kod, chyba że popełnisz beznadziejnie głupi błąd i podasz złe argumenty, ale to wyjdzie na etapie tworzenia aplikacji, a nie w jej publicznym release.

0

Potrzebne mi to d CMS'a, który generuje box (panele) po bokach - lewe i prawe. Służy ku temu funkcja panel(argumenty) i potrzebuję wiedzieć, który akurat panel wywołał tą funkcję. Ot co.

0

Dodaj to do argumentów?

1 użytkowników online, w tym zalogowanych: 0, gości: 1