phpbar.de logo

Mailinglisten-Archive

[php] Problem mit Wertvorbelegung in Methode

[php] Problem mit Wertvorbelegung in Methode

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Fre Apr 1 17:04:37 CEST 2005


Hi Stephan,

BromCo schrieb:
> Hallo Liste, ich habe ein kleines Problem, das sich mir nicht ganz
> erschliesst.
>
> In einer Klasse übergebe ich einer Methode eine Variable die einen
> Timestamp enthält. Wenn sie keienn Timestamp enthält soll per default
> der aktuelle Timestamp genommen werden.
>
> Im folgenden vereinfacht dargestellt:
>
> <?
> class test{
>
> 	var $now='';
>
> 	function sonstwas($zeit=$this->now){
> 		//machwas
> 	}
>
> }
>
> $test=new test;
> $test->now=time();
> ?>
>
> Dies führt aber zu einem Fehler (Parse error: parse error, unexpected
> T_VARIABLE in ), den ich nicht verstehe.
>
> Problem ist der Aufruf "$this->now".
>
> Ich hatte es vorher mit $zeit=time() versuicht, was aber den gleichen
> Fehler zur Folge hatte. Wenn ich aber stattdessen irgendeine Zahl
> angebe funktioniert es.
>
> Gibt es hier eine Lösung? :)

das hatten wir doch vor ein paar Stunden gerade erst?! :-) Da lautete der
Titel "functions mit vordefinierten values":

     http://lists.phpbar.de/pipermail/php/Week-of-Mon-20050328/017326.html

Wenn Du $zeit vorbelegst, dann nicht mit einer Variablen. :-)

Warum machst Du es nicht so:

     function sonstwas($zeit=0){
       if ($zeit == 0) {
         $zeit = time();
       }
       //machwas
     }


Viele Grüße

Lutz


php::bar PHP Wiki   -   Listenarchive