phpbar.de logo

Mailinglisten-Archive

[php] problem mit referenz seit umstellung auf php5 [solved]

[php] problem mit referenz seit umstellung auf php5 [solved]

LB BL lsblsb at gmx.de
Fre Jun 29 14:02:43 CEST 2007



> Ich habe noch nie versucht das in php5 so zu machen, was wahrscheinlich
> damit zusammenhängt, dass ich in php4 nie OOP gemacht habe. Aber ich
> weiss etwas von dem theoretischen Hintergrund:
> In php4 war ein Objekt eigentlich ein assoziativer Array. Also intern
> für die php-Engine. Die Funktionen waren normale Funktionen, nur, dass
> wenn du sie aufgerufen hast $this klamm und heimlich im ersten Parameter
> übergeben wurde.
> Daher musste man in php4 ständig Referenzen benutzen, weil die Objekte
> ja eigentlich keien waren.
> In php5 wurde dann das Obejktekonzept kompeltt überarbeited, so, dass
> die Objekte keine assoziativen Arrays mehr sind, sondern wirklich, wie
> sich das gehört Objekte. Und Objekte sind ja bereits Pointer, daher
> kannst du dir in php5 die ganze Referenziererei sparen.
> 
> Probier's mal ohne die &...
> > 
> > danke für eure hilfe!
> > 
> > gruß lars
> 
> Yannik

hallo,

also. es liegt definitv an call_user_func. hier hat sich was geändert bezüglich der möglichkeit objekte per reference zu übergeben, zumindest dann, wenn & verwendet wird. aber nach php5-angaben sollte das ja eigentlich _keine_ probleme verursachen.

ich will möglichst noch rückwärtskompatibel bleiben mit dem "alten" code.
ohne das & habe ich noch nicht getestet.

ein ersatz um nach wie vor das & verwenden zu können ist nach längerer recherche relativ simpel:

statt call_user_func einfach call_user_func_array verwenden!
und alles funzt.

danke für deine info und gruß
lars


-- 
Psssst! Schon vom neuen GMX MultiMessenger gehört?
Der kanns mit allen: http://www.gmx.net/de/go/multimessenger

php::bar PHP Wiki   -   Listenarchive