Autor | Zpráva | ||
---|---|---|---|
Qlor Profil * |
#1 · Zasláno: 27. 5. 2012, 09:19:02
Dobrý den,
potřeboval bych zavolat __destruct() hned, jak doběhne poslední funkce třídy, která byla zavolána. Volám jednu funkci třeba 3x, pak 2x další atd, potřebuji ale provést script, když doběhne poslední zavolaná funkce té třídy. Momentálně se destruct volá až na konci stránky, což je pro mě značně nevýhodné. Snad jste mě pochopili. Děkuji |
||
joe Profil |
#2 · Zasláno: 27. 5. 2012, 09:43:58
Nepochopili, proč si nevytvoříš nějakou metodu a tu si nezavoláš kdy potřebuješ?
|
||
Qlor Profil * |
#3 · Zasláno: 27. 5. 2012, 09:46:30
Nemusí to být zrovna destruct, ale potřebuji zavolat (něco) automaticky.
|
||
joe Profil |
#4 · Zasláno: 27. 5. 2012, 09:54:55
Tím chceš říct, že máš nějaký kód, o kterém nevíš kdy a jak náhodně se provede? Nebo snad nejsi schopný zjistit, kdy naposledy doběhne poslední zavolaná funkce? Co nějaké počítadlo? Nechápu k čemu je to dobré.
|
||
Qlor Profil * |
#5 · Zasláno: 27. 5. 2012, 09:58:21
Prostě vytvořím třídu a pak začnu volat její funkce, vždy jich volám různý počet, některé vícekrát a po doběhnutí poslední funkce chci, aby se ještě něco stalo. Nechci za každou poslední funkci přidávat další funkci, která to obstará.
|
||
Nox Profil |
#6 · Zasláno: 27. 5. 2012, 10:16:52
Qlor: A jak má interpret či kód či kdokoli vědět, že už pak nebudeš chtít volat žádnou další?
|
||
Qlor Profil * |
#7 · Zasláno: 27. 5. 2012, 10:23:02
No, to je právě ten problém
|
||
final Profil * |
#8 · Zasláno: 27. 5. 2012, 10:38:30
keď to nevieš tak načo sem dávaš takú otázku?
inak načo voláš tú istú funkciu viac krát?a reálny príklad akú potrebuješ funkciu aby išla na konci? |
||
Qlor Profil * |
#9 · Zasláno: 27. 5. 2012, 11:26:41
Už jsem zjistil, že to tak asi nepůjde, ale potřeboval bych ještě poradit
$form = new form(); ... |
||
ShiraNai7 Profil |
#10 · Zasláno: 27. 5. 2012, 11:36:46
Qlor:
<?php class form { ... public function __toString() { return 'ahoj'; } ... } $form = new form; echo $form; // vypise ahoj Jen poznámka - __toString() funguje "spolehlivě" až od PHP 5.2.0. V přechozích verzích funguje pouze v přímé kombinaci s print nebo echo. |
||
Qlor Profil * |
#11 · Zasláno: 27. 5. 2012, 11:41:44 · Upravil/a: Qlor
ShiraNai7:
Paráda, děkuji, ale po echo $form; už se nevypisuje žádný text, stránka skončí jako kdyby tam byl exit; Omlouvám se, něměl jsem zapnuté chyby.. Catchable fatal error: Method form::__toString() must return a string value Vyřešeno, měl jsem místo return echo.. |
||
Časová prodleva: 12 let
|
0