Я работаю с CMS, Joomla, и есть базовый класс, который отображает набор параметров в форме, JParameter. По сути, он имеет функцию render()
, которая выводит некоторый загруженный таблицей HTML, который не соответствует остальной части моего сайта.
Что касается вопросов сопровождения, и поскольку я понятия не имею, где еще это используется, я не хочу менять основной код. То, что было бы идеально, было бы в состоянии определить новый класс, который расширяет JParameter, а затем привести мой объект $ params к этому новому подклассу.
// existing code --------------------
class JParameter {
function render() {
// return HTML with tables
}
// of course, there's a lot more functions here
}
// my magical class -----------------
class MyParameter extends JParameter {
function render() {
// return HTML which doesn't suck
}
}
// my code --------------------------
$this->params->render(); // returns tables
$this->params = (MyParameter) $this->params; // miracle occurs here?
$this->params->render(); // returns nice html