繁体   English   中英

将多维数值数组更改为关联数组

[英]Change multi dimension numeric array to associative array

基本上我有这个数组:

Array
(
    [0] => Array
        (
            [user_id] => 15
            [username] => test user 1
            [user_email] => test1@mail.com
        )
    [1] => Array
        (
            [user_id] => 19
            [username] => test user 2
            [user_email] => test2@mail.com
        )
)

而且我想使用user_id作为数组键。 所以看起来像这样:

Array
(
    [15] => Array
        (
            [username] => test user 1
            [user_email] => test1@mail.com
        )
    [19] => Array
        (
            [username] => test user 2
            [user_email] => test2@mail.com
        )
)

我可以通过使用以下代码来完成。

<?php
$newArray = array();
foreach( $array as $data ) {
    $newArray[ $data['user_id'] ] = array(
        'username'=> $data['username'],
        'user_email' => $data['user_email'] );
}
?>

但是,当有更多参数时,行数很大。 有更容易的方法吗?

只需保留数组并unset() user_id

<?php
$newArray = array();
foreach( $array as $data ) {
    $newArray[ $data['user_id'] ] = $data;
    unset($newArray[$data['user_id']]['user_id']);

}
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM