Home  >  Article  >  Backend Development  >  javascript - Two-dimensional array reorganization problem while keeping key values ​​unchanged

javascript - Two-dimensional array reorganization problem while keeping key values ​​unchanged

WBOY
WBOYOriginal
2016-08-04 09:19:101112browse

I have a two-dimensional array with a fixed number of items, and I want to disrupt the order of the array while keeping the key values ​​unchanged. My array is as follows

<code>$result = ['12'=>[], '14'=>[], '15'=>[], '17'=>[], '23'=>[]]</code>

My array always only has 5 pieces of data. The main reason is that the key values ​​​​in it are not fixed. Every time the key values ​​​​are taken out, they are in order from small to large. But now I need to disrupt this order and return to the page while keeping the key values ​​unchanged. I have tried using the shuffle function, which directly deletes the key values ​​of the array, which is not the result I want.

Dear masters, can you give me a reference method? Thank you

Reply content:

I have a two-dimensional array with a fixed number of items, and I want to disrupt the order of the array while keeping the key values ​​unchanged. My array is as follows

<code>$result = ['12'=>[], '14'=>[], '15'=>[], '17'=>[], '23'=>[]]</code>

My array always only has 5 pieces of data. The main reason is that the key values ​​​​in it are not fixed. Every time the key values ​​​​are taken out, they are in order from small to large. But now I need to disrupt this order and return to the page while keeping the key values ​​unchanged. I have tried using the shuffle function, which directly deletes the key values ​​of the array, which is not the result I want.

Dear masters, can you give me a reference method? Thank you

The

shuffle function will reset the key values ​​of the array. Two-dimensional arrays require some logical processing. Reference is as follows

<code>function arrayOrderBy($array=[]){
    //获取键值
    $keys = array_keys($array);
    //打乱键值
    shuffle($keys);
    $random = [];
    //数组重组
    foreach($keys as $key){
        $random[$key] = $array[$key];
    }
    return $random;
}</code>

Try it locally, I hope it helps you

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn