final class Load { public $name; { if( self::$oInstance == false ) { self::$oInstance = new $name(); } return self::$oInstance; } private function __construct() {} } // end class Load class NextClass { public function __construct() { } public function metoda() { } }
wywolanie:
Load::getInstance('NextClass')->metoda();
Wyswietli
To jest klasa: NextClass to jest metoda: NextClass::metoda
A jeśli w pliku index.php dam include jakiegoś pliku a w nim:
class Mapaa { public function __construct() { } public function pozycja() { } }
odwolanie:
Load::getInstance('Mapaa')->pozycja();
Dostaję komunikat:
Fatal error: Call to undefined method NextClass::pozycja() in (tu linia pliku właśnie z tym odwolaniem)
Chciałbym uzyskać efekt tworzenia obiektu i ładowania ich metod bez Tworzenia dla nich zmiennych w stylu:
$cos = new Cos(); $cos->metoda();
Tak aby takie odwołanie działało wszędzie, w każdym includowanym pliku, bez użycia $GLOBAL. Czy jest to możliwe? Dodam że wszystkie czynności, zachodzą w pliku index.php.