How to use array values as keys without loops?

前端 未结 6 1623
暗喜
暗喜 2020-12-09 16:12

Looping is time consuming, we all know that. That\'s exactly something I\'m trying to avoid, even though it\'s on a small scale. Every bit helps. Well, if it\'s unset of co

6条回答
  •  独厮守ぢ
    2020-12-09 17:00

    Make use of array_map function, (PHP 4 >= 4.0.6, PHP 5)

    [akshay@localhost tmp]$ cat test.php
     1234,'name' => 'blablabla'),
                    array('id'   => 1235,'name' => 'ababkjkj'),
                    array('id'   => 1236,'name' => 'xyzxyzxyz')
                  );
    
    $output = array();
    array_map(function($_) use (&$output){ $output[$_['id']] = $_['name']; },$array);
    
    // Input
    print_r($array);
    
    // Output
    print_r($output);
    
    ?>
    

    Output

    [akshay@localhost tmp]$ php test.php
    Array
    (
        [0] => Array
            (
                [id] => 1234
                [name] => blablabla
            )
    
        [1] => Array
            (
                [id] => 1235
                [name] => ababkjkj
            )
    
        [2] => Array
            (
                [id] => 1236
                [name] => xyzxyzxyz
            )
    
    )
    Array
    (
        [1234] => blablabla
        [1235] => ababkjkj
        [1236] => xyzxyzxyz
    )
    

提交回复
热议问题