将变量传递给回调PHP

use*_*316 3 php callback

我在下面有一个函数被调用并传递一个数组.我还想传递一个字段(或键)名称,以便它可以重复使用.当我尝试在回调中传递$ field时,我得到一个错误,即没有定义$ field.如果我使用文字,它的效果很好.

function array_map_recursive($array,$field) {
        $sum = 0;
        foreach ($array as $key => $value) {
           foreach ($value as $key2 => $value2) {
               $sum += array_sum(array_map(function($item){return $item[$field];},$value[$key2]));
           }
        }
        return $sum;
}
Run Code Online (Sandbox Code Playgroud)

所谓:

number_format(array_map_recursive($dept_catg_grp_descs,"total_ty_yest_sales"))
Run Code Online (Sandbox Code Playgroud)

Nie*_*sol 7

function ($item) use ($field) {return $item[$field];}
Run Code Online (Sandbox Code Playgroud)

这将$field变量"导入" 函数.