Php 添加到多维数组

Php 添加到多维数组,php,arrays,wordpress,multidimensional-array,foreach,Php,Arrays,Wordpress,Multidimensional Array,Foreach,这是我的密码: $get_access_keys_from_wp = get_user_meta( $user_id, '_tdv_volunteer_positions' ); $new_access_keys = array(); if ( $get_access_keys_from_wp ) { echo "This user is signed up for other positions."; $current_access_

这是我的密码:

$get_access_keys_from_wp = get_user_meta( $user_id, '_tdv_volunteer_positions' );
$new_access_keys = array();    

if ( $get_access_keys_from_wp ) {
            echo "This user is signed up for other positions.";

            $current_access_keys = $get_access_keys_from_wp;

            foreach($current_access_keys as $key => $value) {
                $new_access_keys[] = $value;
            }
            //$new_access_keys[] = $position_post_id;
            $new_access_keys[] = array('position_id' => $position_post_id, 'volunteer_first_name' => $first_name, 'volunteer_last_name' => $last_name);

        } else {
            echo "This user is not signed up for any positions.";

            //$new_access_keys[] = $position_post_id;
            $new_access_keys[] = array('position_id' => $position_post_id, 'volunteer_first_name' => $first_name, 'volunteer_last_name' => $last_name);

        }
最初,我得到以下信息:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [position_id] => 67
                    [volunteer_first_name] => Mike
                    [volunteer_last_name] => Jackson
                )

        )

)
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [position_id] => 67
                    [volunteer_first_name] => Mike
                    [volunteer_last_name] => Jackson
                )
            [1] => Array
                (
                    [position_id] => 68
                    [volunteer_first_name] => Mike
                    [volunteer_last_name] => Jackson
                )

        )

)
那太好了。。。我想要这样的。但是,正如上面的逻辑所示,如果阵列已经存在,我需要能够在阵列上循环,并添加到阵列中,使其看起来如下所示:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [position_id] => 67
                    [volunteer_first_name] => Mike
                    [volunteer_last_name] => Jackson
                )

        )

)
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [position_id] => 67
                    [volunteer_first_name] => Mike
                    [volunteer_last_name] => Jackson
                )
            [1] => Array
                (
                    [position_id] => 68
                    [volunteer_first_name] => Mike
                    [volunteer_last_name] => Jackson
                )

        )

)
但是,我得到的结果是:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [0] => Array
                        (
                            [position_id] => 67
                            [volunteer_first_name] => Mike
                            [volunteer_last_name] => Jackson
                        )

                )

            [1] => Array
                (
                    [position_id] => 68
                    [volunteer_first_name] => Mike
                    [volunteer_last_name] => Jackson
                )

        )

)

添加现有值时,似乎需要更深一层。试着替换

foreach($current_access_keys as $key => $value) {
    $new_access_keys[] = $value;
}

或者如果现有数组包含多个元素

foreach($current_access_keys as $key => $value) {
    $new_access_keys = array_merge($new_access_keys,$value);
}

我不认为有必要在
$current\u access\u keys
中从\u wp复制
$get\u access\u keys\u,因为之后您似乎都不会修改。