PHP array_map 回调函数内部函数

PHP array_map callback function inside function

我有一个名为 createCost 的函数,在该函数内部,我有一个接受数组的 array_map 和一个位于 [=14= 内部的名为 checkDescription 的函数].下面是一个例子:

public function createCost{

  $cost_example = array();
  function checkDescription($array_item)
  {
    return $array_item;
  }

  $array_mapped = array_map('checkDescription', $cost_example);
}

当我 运行 我得到一个

array_map() expects parameter 1 to be a valid callback, function 'checkDescription' not found or invalid function name

据我了解,它在 createCost 之外寻找函数 checkDescription,但我如何从内部调用 checkDescription

这样做

public function createCost(){
    $cost_example = array();
    $array_mapped = array_map(function ($array_item){
        return $array_item;
    }, $cost_example);
}

为什么不将函数分配给变量?

public function createCost{

  $cost_example = array();
  $checkDescription = function ($array_item) {
                          return $array_item;
                      }

  $array_mapped = array_map($checkDescription, $cost_example);
}

这不是也更易读吗?