Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> jak wywolac? klasa::metod(); gdzie 'klasa' jest wartoscia..
patrycjusz
post
Post #1





Grupa: Zarejestrowani
Postów: 263
Pomógł: 0
Dołączył: 13.07.2003
Skąd: wawa

Ostrzeżenie: (0%)
-----


Jak w temacie a dokładniej...[php:1:1ee277504a]<?php
function MOD($action)
{
include_once MODS.$action.'.php';
action::perform();
}

?>[/php:1:1ee277504a]
Zwraca blad że klasa action nie istnieje i tutaj wlasnie moje pytanie jak w tym przypadku zastosować jakiś "alias" własnie na tą nazwe klasy? bo w przypadku podstawienia zmiennej $action jest oczywiscie parse error a przypadku jak powyzej ze takowej klasy nie ma (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)
Z góry dziękuje za pomoc.
Pozdrawiam patS.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
patrycjusz
post
Post #2





Grupa: Zarejestrowani
Postów: 263
Pomógł: 0
Dołączył: 13.07.2003
Skąd: wawa

Ostrzeżenie: (0%)
-----


Chyba się nie zrozumieliśmy adwol (lub ja niezrozumiałem ciebie),
posiedziałe troche jeszcze.. (ups... 05:41) i jednak pozostałem przy metodzie tej [php:1:647ba82401]<?php
function MOD($action = 'main')
{
parent::base();
include_once MODS.$action.'.php';
$action = & new $action;
$action->perform();
}
//objaśniając funkcja MOD jest wywolywana przez konstruktor jakiejś tam klasy, i funkcja MOD ma za zadanie wywołać odpowiedni plik z odowiednią klasą i jej metode perform() której to wywoływany jest znowu konstruktor klasy base() aby uzyskać w metodzie perform wlasności klasy base - jej konstruktora
?>[/php:1:647ba82401]
i prawie wszystko ok poza kilkoma rzeczami....
:arrow: 1. najdziwniejsze jest to że gdy w metdzie perform się odwołuje do obiektu adodb (inicjowanego w konstruktorze base) jest ok ale np. obiekt smarty również inicjowany w base już w perform nie jest dostepny a w MOD tak (to mnie dręczy nie moiłosiernie :wink: )
:arrow: 2 . czy jest jakiś sposób aby
Cytat
klasa A
konstruktor A
{
wartości inicjowane przez konstruktor klasy A,

wywolanie metody klasy A -> C
}
metoda C
{
->odwolujemy sie do D.  
}
}

klasa B extends A
{
wartosci z konstruktora klasy A,
}

//zaznaczam że nigdzie nie incjujemy B poza konstruktorem A.

Jak znam życie to namotałem ostro, ale albo zaczynam odczuwać pewien dyskomfort w programowaniu w php4 (własnie tutaj kiedy trzba kombinować) albo ... muszę jeszcze poczytać, więc zwracam się do was z prośbą o pomoc... :wink:
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 17:43