![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 262 Pomógł: 21 Dołączył: 3.05.2004 Skąd: Sopot, Krakow, W-wa Ostrzeżenie: (0%) ![]() ![]() |
Pod php 4 działa - niestety pod v5 i dopisania static wywala się. Jakieś pomysły (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 521 Pomógł: 0 Dołączył: 3.11.2003 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
Oczywiście, że jest. Nawet dwa bardzo dobre sposoby. Może trzy...
1) Dopisać static przed funkcją i wywalić w ogóle if(isset($this)), czyli wszystko robić przez self. To zależy co ta metoda robi, ale nie przychodzi mi do głowy żaden sensowny przykład, w którym byłby to problem. 2) Jeżeli twoja metoda robi coś kompletnie innego dla wywołania statycznego i nie-statycznego (fuuuuuj!), to zrób z tego dwie metody. To proste - jeżeli coś nijak do siebie nie pasuje, to po co wpychać na siłę? 3) Pewnie nie będzie działać, ale jak chcesz to sprawdź. W PHP5 słowo kluczowe static nie jest obowiązkowe (kompatybilność wstecz, chociaż dla reflection na pewno nie jest to bez różnicy). Więc możesz je wywalić i zobaczyć czy wtedy php przełknie twój kod. Jednak opcji 3 nie polecam, nawet jeżeli działa, bo to po prostu jest zły kod. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 06:22 |