class A
{
    function Foo()
    {
        echo 'In foo...'
    }
}
$test = new A();
function Bar($what)
{
    $what();
}提问,设置怎样的参数才能让Bar调用$test的Foo方法。

解决方案 »

  1.   

    把这个作为参数吗?
    楼主是问怎么把A::Foo作为参数传进Bar,让Bar来调用Foo
      

  2.   


    这样就可以了  参数可以在后面加call_user_func(array('A','Foo'), 参数 ..)
      

  3.   

    3楼是错的..
    用1楼的方法,那就不要写那个Bar函数了..直接call_user_func用这个函数就得了..
    这样的话,new也不就不用要喽
      

  4.   

    class A
    {
        function Foo()
        {
            echo 'In foo...';
        }
    }
    $test = new A();
    Bar($test,'Foo');
    function Bar($who,$what)
    {
        $who->$what();
    }
      

  5.   

    class A
    {
        function Foo()
        {
            echo 'In foo...';
        }
    }
    $test = new A();
    function Bar($what)
    {
        $GLOBALS['test']->$what();
    }bar('foo');
      

  6.   

    <?php
    class A
    {
        function Foo()
        {
            echo 'In foo...';
        }
    }
    function Bar($a)
    {
        return $a->Foo();
    }
    $a=&new A();
    Bar($a);
    ?>