网上来的一段说是对php指针的功能的举例。
 〈?PHP
   function mycallbackfunction()
   {
   print(“Hello from callback”);
   }
  
   function myfunction($callback)
   {
   $callback();
   }
   myfunction(“mycallbackfunction”);
  ?>
  
  function myfunction($callback)
   {
   $callback();
   }
这个函数小弟不明白   $callback()这个是函数还是什么。。

解决方案 »

  1.   

    $callback() 其实是将参数 $callback所指向的函数进行调用。比如myfunction(“mycallbackfunction”),这时,$callback() 就相当于调用 mycallbackfunctioin() 函数了。
      

  2.   

    他们是怎么联系在一起的啊、、、、“参数 $callback所指向的函数进行调用”$callback所指向的函数是那个。具体哪里定义的呢。。
      

  3.   

    其实这是个符号引用的问题。举个简单的例子://变量的例子
    $s = "a";
    $a = "how are your";
    echo $$s;//函数的例子,跟你的问题类似。
    $s = "a";
    function a() {
     echo "how are you";
    }
    $s();
      

  4.   


    <?PHP$s = a;
    function a() {
    echo "how are you";
    }
    $s();?>....谢谢啊原来有这个用法的
      

  5.   

    <?PHP
      function mycallbackfunction()
        
         {
       print("Hello from callback");
       }
      
       function myfunction($callback)
       {
       $callback();
       }
       myfunction("");
      ?>。发现测试不通过Parse error: parse error, unexpected T_FUNCTION in E:\aaa\x\wwwroot\a.php on line 2这一类的错误百度了一下:
    1:
    定义了function f($a,$b),然后调用的时候缺少参数也会报此类错误,如使用f($a)调用函数。
    2:昨日调试发现:
    function a(){
    b();
    function b(){
    }
    }
    此类声明在调用a()的时候会报与楼主相同的错误。
    解决:
    function a(){
    function b(){
    }
    b();
    }
    即可。但是虽然b()是在a()内声明的,但是实际上依然可以从外部访问b()。。




      

  6.   

    $a="func"$func="i'm a string"${$a}=$func="i'm a string"
      

  7.   

    请调试一下下面的几个函数令到他通过测试、、、、朋友们可以么楼上的朋友说的是变量的变量。算是好理解,但是小弟说的函数就理解不了拉1:理解不了2:测试不通过。<?PHP
      function mycallbackfunction(){
       print("Hello from callback");
       }
      
       function myfunction($callback)
       {
       $callback();
       }
       myfunction("");
      ?>。
     
    上面的几个函数究竟是什么关系????
    能帮小弟调试通过为止么、、、、、朋友门能否自己调试一下?
      

  8.   

    唉我的同学都没有人搞php的只能在这里问了、、、
      

  9.   

    在phpchina 有了答案了。有兴趣的话。,,我待会儿发上来
      

  10.   

    空格也有中文和英文的区别的。
    比如 “” 和 "" 同样都是引号,但是 一个是中文输入法打出来的,另外一个是英文输入法打出来的不知道和全角和半角的区别是不是一样的呢<?PHP
       function mycallbackfunction()
       {
       print("Hello from callback");
       }
      
       function myfunction($callback)
       {
       $callback();
       }
       myfunction("mycallbackfunction");
    ?>================下面的测试通过,上面的不能=======
    <?PHP
    function mycallbackfunction()
    {
    echo "Hello from callback";
    }
    function myfunction($callback)
    {
    $callback();
    }
    myfunction("mycallbackfunction");
    ?>