Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在创建匿名PHP函数期间呈现变量_Php_Declaration_Anonymous Function - Fatal编程技术网

在创建匿名PHP函数期间呈现变量

在创建匿名PHP函数期间呈现变量,php,declaration,anonymous-function,Php,Declaration,Anonymous Function,我正在尝试使用匿名函数实现一个简单的排序函数。asc和desc分拣各一个 是否可以在创建函数时立即呈现$sortBy变量,但在稍后调用时仍传入$x和$y?我希望在创建这些密钥时能够动态地传递密钥 $sortBy = 'some_key'; // descending $sort['desc'] = function($x, $y) { if($x['data'][$sortBy] == $y['data'][$sortBy]) return 0; return ($x['da

我正在尝试使用匿名函数实现一个简单的排序函数。asc和desc分拣各一个

是否可以在创建函数时立即呈现$sortBy变量,但在稍后调用时仍传入$x$y?我希望在创建这些密钥时能够动态地传递密钥

$sortBy = 'some_key';

// descending
$sort['desc'] = function($x, $y) {
  if($x['data'][$sortBy] == $y['data'][$sortBy])
    return 0;

  return ($x['data'][$sortBy] > $y['data'][$sortBy]) ? -1 : 1;
};

uasort($arrayToSort, $sort[$order]);
编辑:
我正在将此数组作为参数传递给uasort()。

您可以使用以下命令在封闭范围内传递变量:

$sortBy = 'some_key';

$sort['desc'] = function($x, $y) use ($sortBy) {
    // implementation
};