Как мне получить переменную $ str (ниже) в моем классе / классах? Функция используется для динамического вызова каждого класса, а не для того, чтобы иметь «множество» операторов if (class_exists).
на странице:
echo rh_widget('Search');
функция (на странице функций):
function rh_widget($str) {
global $db, $table_prefix;
$newwidget = 'rh_'.strtolower($str);
if(class_exists($newwidget)):
$rh_wid = new $newwidget();
echo $rh_wid->rh_widget;
endif;
}
Затем класс Parent & child (на странице классов), такой как:
class widget {
public $str;
function __construct() {
$this->before_widget .= '<ul class="rh_widget">';
$this->before_title .= '<li><h3>'.$str.'';
$this->after_title .= '</h3><ul>';
$this->after_widget .= '</ul></li></ul>';
}
}
class rh_search extends widget {
public function __construct() {
parent::__construct();
global $db, $table_prefix;
$this->rh_widget .= $this->before_widget;
$this->rh_widget .= $this->before_title.' '.$this->after_title;
$this->rh_widget .= '<li>Content etc. in here</li>';
$this->rh_widget .= $this->after_widget;
}
}
Чего я не могу добиться, так это «протянуть» $ str через вызов функции через функцию в класс.
Любое предложение, пожалуйста. Спасибо