duanfengshang1088 2016-07-19 06:21
浏览 15
已采纳

对数组进行排序并获取密钥

I have two arrays First Array :

$array_1 = array('50','20','30');

Second Array :

$array_2 = array('50','30','20');

Second array is generating by applying rsort to $array_1

How can i get another array of key like

$key_array = ('0','2','1');
  • 写回答

5条回答 默认 最新

  • doumei9832 2016-07-19 06:27
    关注

    The rsort function will reindex your array keys:

    Note: This function assigns new keys to the elements in array. It will remove any existing keys that may have been assigned, rather than just reordering the keys.

    You can use arsort instead to maintain index associations. Then you can simply use array_keys to get your desired result.

    $unsorted = [50, 20, 30];          // array with unsorted values
    $in_reverse = $unsorted;           // create copy because arsort is by reference
    arsort($in_reverse);               // do the actual sorting
    $keys = array_keys($in_reverse);   // fetch the keys
    
    print_r($keys); 
    

    will output

    Array
    (
        [0] => 0
        [1] => 2
        [2] => 1
    )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算
  • ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源
  • ¥15 安卓JNI项目使用lua上的问题