Autor Zpráva
kazivalek
Profil *
Prosím o radu, nejlépe dobrou na můj možná marný dotaz.
Existuje nějaká možnost, jak lze vypsat chod skriptu a funkci v něm? Mám jednu velkou a dost propletenou třídu a potřebuji do ní teď něco dopsat, 2 roky jsem ji neviděl a nyní jsem ztracen. Abych to neprotahoval-potřebuji vědět co se děje a jaké fc se volají, v jakem pořadí a také volaní fc jinou fc… něco jako pavučina?
Dost pochybuji, ale možná je řešení které nebude drastické
Teď mě napadlo, kdyby to vypadalo jako pr níže, to by bylo dokonalé
<pre> <? print_r($neja­ke_vnorene_po­le) ?> </pre>
nevimco2
Profil
Zkusil jsi debug ? Komentáře ? Vzít si fu třídu od startovního bodu a jít dál a dál ?
kazivalek
Profil *
nevimco2:
Mam tam komentare, sbiram je cestou a nakonec echo, ale ty jsou jen zlomek, Debug jsem ted zacal studovat googlem, nikdy jsem se s nim nesetkal, php jej jen hobby. Ta treti otazka byla polozena dobre, zkousel jsem vzit skript a prepisovat si fc na papir, ale to jsem zavrhl u druhe fc, jelokoz se to ve fc vetvi podminkama, proste pekl. Neni to nic zivotne duleziteho, nikdo neumre, ale dost by mi to pomohlo a ulehcilo praci a to hodne.Kdyby byl vysledek podobny jako je vysledek print_r(), jsem spokojen, jdu na ten debug, jen nevim jak to rozchodim. doma win, skript jede na hostingu
Tori
Profil
kazivalek:
Možná se vám hodí debug_backtrace, dát na pár nejvíc zanořených míst a zjistit, kdo volá. Bez xdebug byste ještě mohl zjistit pořadí volání metod tak, že si uděláte kopii třídy (s nějakým jiným názvem), všem názvům metod přidáte podtržítko na konec, a doplníte metodu:
public function __call($func, $args) {
    echo "<br>volána metoda: $func";
    return call_user_func_array(array($this, $func."_"), $args);
}
Jednotlivá volání metod měnit nebudete, jde o to, aby se všechny volaly oklikou přes __call. Bude to míň efektivní, ale na ladění použitelné.
kazivalek
Profil *
Nedari se a debug uz vubec ne :-(

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0