Какова лучшая практика в переопределении методов?Особенно, если нам нужно добавить еще один параметр?
Это не соответствует E_STRICT (добавляя $ soft в качестве второго параметра):
public function delete($id, $soft = false, $cascade = true) {
if ($soft) {
return $this->_softDelete();
}
return parent::delete($id, $cascade);
}
В результате:
Declaration of Conversation::delete() should be compatible with that of Model::delete()
Я знаю, что не следует переопределять методы таким образом ( добавление-параметров-к-переопределению-методу-строгого наблюдения ).
но если нужно, как быпродолжить?(без необходимости удалять E_STRICT) Основная идея состояла в том, чтобы перехватывать обычные вызовы удаления без необходимости переписывать все вхождения этого вызова метода модели.