如何查找回调是否是特定方法?

时间:2011-12-22 22:00:23

标签: php function

我曾经有过:

$callback = array(&$this, 'foo');

如果$callback是foo方法,我怎样才能找到?

if($callback == array(&$this, 'foo'))似乎无法正常工作

2 个答案:

答案 0 :(得分:2)

回调只是简单的数组,方法名称是字符串。只需检查数组的第二个元素:

if ($callback[1] == 'foo')

答案 1 :(得分:1)

<?php
class A
{
    public function Test1()
    {
        $callback = array(&$this, 'foo');
        var_dump($callback == array(&$this, 'foo'));
    }

    public function foo()
    {
    }   
}

$a = new A();
$a->Test1();
?>