在创建匿名PHP函数期间呈现变量
我正在尝试使用匿名函数实现一个简单的排序函数。asc和desc分拣各一个 是否可以在创建函数时立即呈现$sortBy变量,但在稍后调用时仍传入$x和$y?我希望在创建这些密钥时能够动态地传递密钥在创建匿名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
$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
};