В настоящее время я делаю это так, но, похоже, это не совсем так:
class Name
{
protected $jobs2do;
public function __construct($string) {
$this->jobs2do[] = $this->do;
}
public function do() {
...
}
}
Поскольку непосредственное назначение функции вызовет предупреждение, следует сделать что-то вроде:
function func()
{
...
}
$func_array[] = 'func';
скажем, поместите это в строку, но я не знаю, как это сделать, когда это функция-член.
Следующая версия в порядке?
class Name
{
public $jobs2do;
public function __construct($string) {
$this->jobs2do[] = array($this,'do');
}
public function do() {
...
}
}
когда звоните, просто:
$instance = new Name();
foreach ($instance->jobs2do as $job)
{
call_user_func($job);
}