我正在尝试使用 array_multisort 对任何数组进行排序,并且一切正常。但是,根据脚本中的条件,我需要更改选项。所以到目前为止我所拥有的是:
array_multisort(
$sort1,SORT_ASC,
$sort2,SORT_ASC,
$sort3,SORT_ASC,
$arraytosort
);
Run Code Online (Sandbox Code Playgroud)
我想要的是这样的:
$dynamicSort = "$sort1,SORT_ASC,$sort2,SORT_ASC,$sort3,SORT_ASC,";
array_multisort(
$dynamicSort,
$arraytosort
);
Run Code Online (Sandbox Code Playgroud)
有什么建议?
您可以尝试使用call_user_func_array。但我以前从未在内置函数上尝试过。下面是一个例子:
$dynamicSort = "$sort1,SORT_ASC,$sort2,SORT_ASC,$sort3,SORT_ASC";
$param = array_merge(explode(",", $dynamicSort), array($arrayToSort))
call_user_func_array('array_multisort', $param)
Run Code Online (Sandbox Code Playgroud)