以下是一个示例类:
class A{
.
.
.
public function updateAction(){
$tags=explode(' ',$taglist);
.
.
.
$tagsInDb=$tagsInDb->toArray();
$dif=array_diff_uassoc($tags,$tagsInDb,"here the callback should be inserted");
}
protected function callback_function_for_array_diff($a,$b){
}
}
如何将callback_function_for_array_diff作为array_diff_uassoc的回调函数调用?
答案 0 :(得分:2)
这里描述了指定回调的不同类型:
http://www.php.net/manual/en/function.call-user-func.php
由于你没有静态函数,你需要一个类的实例,即$ this
因此,您可以将回调指定为array($this, callback_function_for_array_diff)
或者你做了
static function callback_function_for_array_diff($a,$b){
然后是"A::callback_function_for_array_diff"
或array("A","callback_function_for_array_diff")
答案 1 :(得分:0)
使用
array("class_name","func name")
像
$dif=array_diff_uassoc($tags,$tagsInDb,array($this,"callback_function_for_array_diff"));