webForumDet fria alternativet

Problem med singleton i factory

2 svar · 270 visningar · startad av Compusa

CompusaMedlem sedan jan. 20023 327 inlägg
#1

Varför fungerar inte följande rad och hur ska jag få den att fungera?

return new $dbtype::singleton();

Denna kodrad körs i en factory metod som ska retunera en instans av min klass som är en singleton. Felmeddelande:

Parse error: parse error, unexpected T_PAAMAYIM_NEKUDOTAYIM in /home/plump/domains/plump.se/public_html/test/core/database/DaoFactory.php on line 20

Att retunera en klass som inte är en singleton på följande vis fungerar:

return new $dbtype;
CompusaMedlem sedan jan. 20023 327 inlägg
#2

Problemet är "::" när jag anropar metoden singleton(), hur ska jag på ett korrekt sätt kunna anropa dessa.

CompusaMedlem sedan jan. 20023 327 inlägg
#3

Jag löste problemet på följande vis:

Problem solved:    					
$dao = call_user_func(array($dbType,'singleton'));
return $dao;

Variabel namn tillåts inte framför "::"

267 ms totalt · 3 externa anrop · v20260731065814-full.30151723
141 ms — hämta forumlista (db)
123 ms — hämta statistik (db)
131 ms — hämta tråd, inlägg och bilagor (db)