2012-06-07 163 views
0

我想創建一個PHP函數,它將返回指向另一個函數的指針。這就是我想要做的PHP函數返回指向另一個函數的指針

<?php 

function modeMaker() { 

return function myMax() { 
echo "max function"; 
}; 
} 

$as=modeMaker(); 

?> 
+1

而你的問題是? – flowfree

+2

更改'返回函數myMax(){'到'返回函數(){'它實際上與PHP> = 5.3 – vstm

回答

0

PHP沒有「指針」,特別是沒有函數。你有兩個選擇:

  1. return名普通函數的

    function myMax() { 
        echo "max function"; 
    }; 
    
    function modeMaker() { 
        return 'myMax'; 
    } 
    
    $as = modeMaker(); 
    $as(); 
    
  2. return匿名函數,如果你在PHP 5.3+運行:

    function modeMaker() { 
        return function() { 
         echo "max function"; 
        }; 
    } 
    
    $as = modeMaker(); 
    $as();