我有这样的事情:
public function generateAudio(){
$sourceProcessor = new Sourceprocessor($_SESSION['input_file']);
$sourceProcessor->extractAudio();
}
public function checkProgress($percent){
//do something with a percents
}
并且在SourceProcessor
我有这样的事情:
public function extractAudio($callback=NULL, $folder=NULL){
if(is_callable($callback)){
$callback($percentage);
}
}
我试图传递像
这样的方法$sourceProcessor->extractAudio(array($this,'checkProgress');
$sourceProcessor->extractAudio(array($this->checkProgress());
但似乎没有任何效果。任何人都知道如何做到这一点?
答案 0 :(得分:4)
像这样调用你的方法:
$sourceProcessor->extractAudio(array($this,'checkProgress'));
从extractAudio
调用这样的回调:
call_user_func($callback, $percent);
有关详细信息,请参阅call_user_func
和callable
的手册条目