PHP中弃用的Create_Function

时间:2019-04-05 15:51:28

标签: php wordpress

我在Wordpress中的一个项目中遇到了这个问题,该项目说create_function的方法已经过时,因此我重构了此部分?

function make_plural_form_function($nplurals, $expression) {
        $expression = str_replace('n', '$n', $expression);
        $func_body = "
            \$index = (int)($expression);
            return (\$index < $nplurals)? \$index : $nplurals - 1;";
        return create_function('$n', $func_body);
    }

1 个答案:

答案 0 :(得分:-1)

是的,您需要使用:

function make_plural_form_function($nplurals, $expression) {
    $expression = str_replace('n', '$n', $expression);
    $func_body = "
        \$index = (int)($expression);
        return (\$index < $nplurals)? \$index : $nplurals - 1;";
}

 add_action ('widgets_init', , make_plural_form_function);

代码可能是错误的,但是基本上我建议使用add_action,因为WP使用的不是create_function