php按键按所需顺序对数组排序

php按键按所需顺序对数组排序,php,arrays,sorting,Php,Arrays,Sorting,如何创建一个PHP函数,根据数组的键按所需顺序对数组进行排序 数组将包含字符串或数值,例如我有 array = A,B,C,D,E,F 我想根据其键更改数组,以便创建 创建数组\u索引(5,2,4,1,3,0)将显示数组F、C、E、B、D、A 创建数组\u索引(0,2,4,1,3,5)将显示数组A、C、E、B、D、F 我知道,我可以手动访问值,例如:$array[5]、$array[2]、…等等,但这需要很多时间,是否有任何函数用于此 感谢使用“按键排序”时,函数是最好的。检查PHP中可用的不

如何创建一个PHP函数,根据数组的键按所需顺序对数组进行排序

数组将包含字符串或数值,例如我有

array = A,B,C,D,E,F
我想根据其键更改数组,以便创建

创建数组\u索引(5,2,4,1,3,0)
将显示
数组F、C、E、B、D、A
创建数组\u索引(0,2,4,1,3,5)
将显示
数组A、C、E、B、D、F

我知道,我可以手动访问值,例如:
$array[5]、$array[2]、…
等等,但这需要很多时间,是否有任何函数用于此


感谢使用“按键排序”时,函数是最好的。

检查PHP中可用的不同排序选项

基于数组键排序-


您还可以根据自己的比较函数进行排序-

Php中有许多数组函数,这些函数都将在上进行讨论。至于我,我知道你正在寻找和。请在给定的链接上检查它们。你自己试试看。。祝你好运


如果您觉得ksort和krsort不能灵活或准确地满足您的要求,您还可以创建自己的自定义函数来完成所需的工作,并在应用程序中随时使用它

使用一些php排序函数的方法很少(就像其他人已经建议的那样),这是另一种简单的方法

函数SortaryByKeys() 测试:
干杯;)

您可以使用krsort()按键进行逆序排序非常感谢您的帮助我一直在寻找最好的方法。你的答案可能最简单。
function sortArrayByKey($keystring, $origarray) {
  $res = array();
  $keys = explode(',', $keystring);
  foreach ($keys as $key) $res[] = $origarray[$key];
  return $res;
  }
$original_array = array('A', 'B', 'C', 'D', 'E', 'F');

$sort_pattern = '5,2,4,1,3,0';
$new_array = sortArrayByKey($sort_pattern, $original_array);
echo "$sort_pattern => " . join(',', $new_array) . "<br />\n";

$sort_pattern = '0,2,4,1,3,5';
$new_array = sortArrayByKey($sort_pattern, $original_array);
echo "$sort_pattern => " . join(',', $new_array) . "<br />\n";

$sort_pattern = '5,4,3,2,1,0';
$new_array = sortArrayByKey($sort_pattern, $original_array);
echo "$sort_pattern => " . join(',', $new_array) . "<br />\n";

$sort_pattern = '0,5,4,2,1,3';
$new_array = sortArrayByKey($sort_pattern, $original_array);
echo "$sort_pattern => " . join(',', $new_array);
5,2,4,1,3,0 => F,C,E,B,D,A
0,2,4,1,3,5 => A,C,E,B,D,F
5,4,3,2,1,0 => F,E,D,C,B,A
0,5,4,2,1,3 => A,F,E,C,B,D