php - 用变量创建函数名

时间:2013-07-07 11:10:10

标签: php foreach

我有一些像这样的代码

$form_names = GFFormsModel::get_forms();
foreach ($form_names as $form) {
  add_action("gform_pre_submission_".$form->id, "format_ecp_event_meta_from_gravity");

  function format_ecp_event_meta_from_gravity(){

  }
}

因为我正在使用foreach循环函数重复。那么有没有办法使用$form->id

使函数唯一

我的意思是我想要像这样的函数名称

function format_ecp_event_meta_from_gravity_{$form->id}(){

}

有人能帮助我吗? 感谢

1 个答案:

答案 0 :(得分:2)

使用闭包:

$form_names = GFFormsModel::get_forms();
foreach ($form_names as $form) {
    $func = function() {
        ...
    };
    add_action("gform_pre_submission_".$form->id, $func);
}