2012-03-28 66 views
0

我怎樣才能轉換等
如何2 d陣列1個d數組轉換在PHP

Array 
(
    [0] => A 
    [1] => B 
    [2] => C 
    [3] => D 
    [4] => E 
    [5] => F 
) 

數組

Array 
    (
     A 
     B 
     C 
     D 
     E 
     F 
    ) 

我試圖使用的foreach密鑰值和分配值,以新的數組,但即使是新的陣列將在2D形式

+3

這個問題沒有意義。你將永遠有你的陣列的鍵。 – Napolux 2012-03-28 08:05:16

+1

這裏的基本錯誤是假設這個數組爲二維。 – 2012-03-28 08:06:37

+0

最接近你想要的是一個字符串,我猜。所以只需'implode('',$ array)'數組。儘管如此,你仍然可以通過$ string [0] => A訪問它。 – SJFrK 2012-03-28 08:09:28

回答

2

你或許應該考慮什麼二維數組:

一維數組:

Array 
(
    [0] => A 
    [1] => B 
    [2] => C 
    [3] => D 
    [4] => E 
    [5] => F 
) 

1D關聯數組:

Array 
(
    [foo] => A 
    [bar] => B 
    [moreFoo] => C 
    [someElse] => D 
) 

2D陣列:

Array 
(
    [0] => Array 
    (
     [0] => A 
     [1] => B 
     [2] => C 
     [3] => D 
     [4] => E 
     [5] => F 
    ) 
    [1] => Array 
    (
     [0] => A 
     [1] => B 
     [2] => C 
     [3] => D 
     [4] => E 
     [5] => F 
    ) 
    [2] => Array 
    (
     [0] => A 
     [1] => B 
     [2] => C 
     [3] => D 
     [4] => E 
     [5] => F 
    ) 
) 

2D關聯數組:

Array 
(
    [foo] => Array 
    (
     [foo] => A 
     [bar] => B 
     [moreFoo] => C 
     [someElse] => D 
    ) 
    [name] => Array 
    (
     [foo] => A 
     [bar] => B 
     [moreFoo] => C 
     [someElse] => D 
    ) 
    [thirdElement] => Array 
    (
     [foo] => A 
     [bar] => B 
     [moreFoo] => C 
     [someElse] => D 
    ) 
) 
+0

這裏沒有真正的php代碼答案,只是對各種數組類型的解釋。 – emeraldjava 2013-12-19 13:18:44

0

你的問題沒有任何意義......如果你有這個「扁平」陣列,你將如何解決,例如它的第三個元素?

同樣如@Shiplu在評論中提及,則作爲一個例子使用數組已經是一個1-d陣列,2- d的陣列在

$array['level1']['level2'] = 'value'; 
0

在PHP所有陣列具有鍵的形式,無論您在創建陣列時是否分配它們。該指數從0開始,所以你會獲得一種例如使用0,B使用1等

3

這不是一個二維數組的開始。它是一個1d數組... PHP中的所有數組都包含鍵/值對。所以

array('A','B') 

是一維數組與值A和B中,向其中鍵被自動分配(0和1)爲陣列中的他們的偏移位置。

一個二維數組會像

array(array('A','B') 
     array('C','D') 
    ) 
+0

顯示的[0],[1],...是鍵或索引,而不是值。他們在同一個維度。 http://ideone.com/5eVJM1 – PaulH 2015-09-03 07:20:22

+0

@PaulH - 我在這個答案的任何地方說0和1是值嗎?我特別說他們是鑰匙:'哪些鑰匙被自動分配(0和1)' – 2015-09-03 07:23:32

+0

你說的是完全正確的。我給了它+1。我只是想爲新手添加一些信息,比如GoodSp33d早在2012年 – PaulH 2015-09-04 19:16:18

0

如果我正確理解你的問題,你要轉換的未分類的索引數組類似東西:

array (
    [2] => A, 
    [5] => B, 
    [8] => C, 
    ["x"] => D, 
    ["v"] => E, 
    [0] => F 
); 

array (
    A, 
    B, 
    C, 
    D, 
    E, 
    F 
); 

如果是這種情況,那麼使用t他array_values功能。

$arr = array_values($arr);