2014-08-28 52 views
0

我有一个函数发生器,它使用一些闭包来个性化函数。 它返回一个函数,我怎么能使它成为一个递归函数?生成函数的递归php

Example function Generator($something){ 
    return function($element) use ($something){ 
     if($element=="whatever") 
     //dosomething 

    } 
    else{ 
     //call itself (the generated function) $this() like 
    } 


} 

生成的函数旨在用于具有两个多维数组的过滤器。请回答我的问题,因为我认为它很有价值,但不回答替代方案,而是回答如何执行递归生成的函数。

回答

0

我的回答是:

modyfying发电机

function Gen($element,...&$function){ 
     return function($listItem) use ($element,...&$function){ 
     if(something)//dosomething; 
     else $function(); 
     } 
    } 

当调用,则:

$generated = function(){}; 
$generated = Gen('something',...$generated); 

我不喜欢它,请提供他人