如何为每个数组键/值创建函数?

时间:2015-01-09 07:35:43

标签: php arrays wordpress function

在评论之前请仔细阅读......我正在开发一个像wordpress小部件和侧边栏这样的框架。这些是预定义的功能。在我们的框架中,我需要传递创建动态函数定义的参数。 create_function()不符合我的要求。

我有一种情况需要创建动态函数。所以,我创建了一个包含函数名称的数组。请参考以下描述情况的示例。

E.g。

$dynArr = array(
 'function_one',
 'function_another',
 'function_another_one',
);

foreach ($dynArr as $key => $val) {
   function $key() {
       // FUNCTION DESCRIPTION HERE
   }
}

使用PHP或使用wordpress过滤器等是否有任何解决方案。

2 个答案:

答案 0 :(得分:1)

也许这会对你有所帮助:

$function = function()
{
    echo 'Im annonymous function';
};

$function();

PHP 5.3需要工作; - )

答案 1 :(得分:-1)

最常用的方法是使用eval()

eval('function abc() { echo "hello"; }');
abc();

当你提到wordpress时,这就是你需要做的事情。但我建议反对它,这是低效和危险的,而是生成一个php文件,如果函数的主体不经常改变。