Warum überwiegende Doctrine_Record :: save () geben Sie mir einen strengen Standardfehler in Symfony 1.2?
Frage
Ich habe folgendes Modell:
class Model extends BaseModel
{
public function save($conn = null)
{
if(!$this->getId())
{
//do stuff
}
return parent::save($conn);
}
}
Ich fühle mich wie ich die API-Beschreibung von Doctrine_Record am follwing :: save () Unterschrift (mit Ausnahme der seltsamen Klammer würde ich mir einen Syntaxfehler geben ...).
Wenn ich diesen Code ausführen, es funktioniert gut , aber ich erhalte die folgende Warnung:
Strict Standards: Declaration of Model::save() should be compatible with that of Doctrine_Record::save() in $ROOT/lib/model/doctrine/Model.class.php on line 6
ich in der Regel drehen Fehlerberichterstattung ERROR_ALL, und versuchen, mit einer Warnung freien Code zu bleiben. Das stört mich. Ich Kasse alle Quellenlehre Code und greped „speichern (“ auf sie und versuchte, eine Signatur nach einer anderen. Nichts. Zum ersten Mal PHP hat mich für zu freizügig zu sein, seltsam hu :-)?
Lösung
Die richtige Signatur für die Methode speichern sollte sein:
public function save(Doctrine_Connection $conn = null)
Andere Tipps
Auf einer seitlichen Anmerkung:. Bei anderen Funktionen können Sie diesen Fehler erhalten, aber Sie müssen Funktion ($ event) anstelle der oben verwenden