簡體   English   中英

數組索引操作PHP

[英]Array index manipulation php

我在這里有一個問題。 假設我有以下形式的數組:

Array
(
     [0] => Array
         (
             [0] => Array
                 (
                     [A] => Array
                         (
                             [id] => 1
                             [firstname] => John
                             [lastname] => Smith
                             [email] => jsmith@gmail.com
                         )

                     [B] => Array
                         (
                         )

                 )

         )

     [1] => Array
         (
             [0] => Array
                 (
                     [A] => Array
                         (
                             [id] => 2
                             [firstname] => Tommy
                             [lastname] => Tom
                             [email] => ttom@gmail.com
                         )

                     [B] => Array
                         (
                         )

                 )

         )

)

我如何用內部數組的索引替換外部數組的索引,以便擁有這樣的數組:

Array
(
        [0] => Array
            (
                [A] => Array
                    (
                        [id] => 1
                        [firstname] => John
                        [lastname] => Smith
                        [email] => jsmith@gmail.com
                    )

                [B] => Array
                    (
                    )

            )



        [1] => Array
            (
                [A] => Array
                    (
                        [id] => 2
                        [firstname] => Tommy
                        [lastname] => Tom
                        [email] => ttom@gmail.com
                    )

                [B] => Array
                    (
                    )

            )



)

提前致謝!

對於您的特定情況,另一種選擇可能很簡單:

$out = array_map('reset', $in);

您必須遍歷數組並根據內部值創建一個新數組。

$in_array = <your array>;
$out_array = Array();

foreach($in_array as $k => $v) {
    $out_array[$k] = array_shift($v);
}

在這里, $out_array[$k]保留了原始的頂級數組鍵,而array_shift($v)表示要為值挖掘一個級別(使用array_shift在中級數組中的第一個元素處獲取值,以及將其用作新數組的值)。

//$array is your array
foreach($array as $key=>$value)
{
   $new_array[] = $array[$key];
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM