How to change orders of array?

前端 未结 6 2032
悲&欢浪女
悲&欢浪女 2021-02-09 20:04
$a = array(0=>\'a\',1=>\'b\',2=>\'c\', 3=>\'d\');

I want to change the order to be 3,2,0,1

$a = array(3=>\         


        
6条回答
  •  别跟我提以往
    2021-02-09 20:43

    The easiest way to do it with uksort(), more functional way:

    $a = ['a','b','c','d'];
    $order = [3, 2, 0, 1];
    
    uksort($a, function($x, $y) use ($order) {
        return array_search($x, $order) > array_search($y, $order);
    });
    
    print_r($a); // [3 → d, 2 → c, 0 → a, 1 → b]
    

提交回复
热议问题