mehrere Konstruktoren für ein Objekt

Der nette Mann

Erfahrenes Mitglied
Hallo,

ich möchte folgendes machen. Ich möchte eine Klasse schreiben, in der die Elemente nur über die Methoden der Klasse verändert werden dürfen. Soweit kein Prob. Jetzt möchte ich, dass es einen Konstruktor gibt, der die Elemente initialisiert. Soweit auch kein Prob. Aber jetzt möchte ich noch einen Konstruktor, der keine Parameter enthält und alle Elemente mit 0 initialisiert. Je nach Parameterübergabe sollte dann gewählt werden, welcher Konstruktor genommen werden muss. So geht das zumindest in C++.
In PHP bekomm ich den Fehler, dass ich den Konstruktor nicht mehrfach deklarieren darf. Kann ich das, wie oben beschrieben, nicht realisieren, oder gibt es noch einen umständlicheren Weg?

Danke für eure Hilfe

Der nette Mann
 
Hallo,

du kannst ja abfragen ob die Parameter leer sind
PHP:
if ($par1=='' && $par2=='' )
{
$this->par1=$par1;
$this->par2=$par2
}
else
{
$this->par1=0;
$this->par2=0;
}
, weil meines Wissens, geht das leider nicht.

Aber ich hoffe trotzdem geholfen zu haben. ;)
 
Du könntest die Werte auch Vorgeben:
Code:
function __construct($wert1 = '', $wert2 = '') {
       ...
   }
Wenn also dann $myObj = new myObj(); aufgerufen wird kannst du alles mit 0 initalisieren. Natürlich brauchst du noch den entsprechenden Code im Konstruktor.
 
Danke für die Antworten,

geht also nicht mit mehreren Konstruktoren. Die Werte vorzubelegen ist wohl die elegantere Methode und die werde ich also benutzen. Hätte ich eigentlich auch selbst drauf kommen können ;)

Danke nochmals...

Der nette Mann
 
Zurück