Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Hermetyzacja i singleton
rotkiwer
post
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 16.03.2005

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


Witam,
Natknąłem się na dość dziwny problem. Chce stworzyć obiekt klasy(a właściwie pobrać referencje - singleton), której nazwy nie znam. Nazwa ta jest zapisana w pliku konfiguracyjnym. Gdybym chciał stworzyć nową instancje klasy(a nie pobrać referencję) problem rozwiązałby kod:
  1. <?php
  2. $objectX = new $className();
  3. ?>

Jednak klasa, do której chcę się dostać jest singletonem.
Dokonując kilku zmian i wykorzystując operator wyłuskania( :: ) kod powinien wyglądać tak:
  1. <?php
  2. $objectX = $className::__singleton();
  3. ?>

Niestety, php wypluwa niezrozumiały błąd o treści ‘Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in (…)’

Będe wdzięczny za wszelkie podpowiedzi i sugestie związane z tematem.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
DeyV
post
Post #2





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Cytat(manual)
call_user_func --  Call a user function given by the first parameter
Description
mixed call_user_func " title="Zobacz w manualu PHP" target="_manual( callback function [, mixed parameter [, mixed ...]])


Object methods may also be invoked statically using this function by passing array($objectname, $methodname) to the function parameter.

  1. <?php
  2. class myclass {
  3. function say_hello() 
  4. {
  5. echo&#092;"Hello!n\";
  6. }
  7. }
  8.  
  9. $classname =&#092;"myclass\";
  10.  
  11. call_user_func(array($classname, 'say_hello'));
  12. ?>
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: 27.09.2025 - 13:55