2013-03-08 48 views
1

陣列我有一個像問題在PHP

Array 
(
    [1] => Array 
     (
      [A] => Name 
      [B] => Email 
      [C] => Phone 
      [D] => Bank Name 
      [E] => Cheque Number 
      [F] => Cheque Date 
      [G] => Amount 
      [H] => Due On 
     ) 

    [2] => Array 
     (
      [A] => Sri 
      [B] => [email protected] 
      [C] => 312313131 
      [D] => SBI 
      [E] => 32324234 
      [F] => 9/19/13 19:00 
      [G] => 121 
      [H] => 7/12/13 15:00 
     ) 

) 

數組現在,我想通過使用PHP的這個上面數組轉換爲

Array 
(

    [1] => Array 
     (
      [A] => Sri 
      [B] => [email protected] 
      [C] => 312313131 
      [D] => SBI 
      [E] => 32324234 
      [F] => 9/19/13 19:00 
      [G] => 121 
      [H] => 7/12/13 15:00 
     ) 

) 

我正在嘗試使用array_shift()。但通過array_shift,我沒有得到確切的輸出。通過使用這個,我得到了以下輸出:

Array 
    (
     [A] => Name 
     [B] => Email 
     [C] => Phone 
     [D] => Bank Name 
     [E] => Cheque Number 
     [F] => Cheque Date 
     [G] => Amount 
     [H] => Due On 
    ) 

請讓我知道如何做到這一點。

+3

爲什麼你會在你的'print_r'中去掉換行符?這是不可讀的。 – ceejayoz 2013-03-08 17:34:29

+0

@ceejayoz猜測它是從瀏覽器渲染而不是從頁面源中複製的。 – 2013-03-08 17:35:31

+2

請在您的瀏覽器中查看頁面源代碼,並複製來自threre的數組'print_r()'轉儲。這將使_far_更容易理解結構與換行符完好 – 2013-03-08 17:36:13

回答

0

array_shift會訣竅,但你必須認識到array_shift修改原始數組並返回移位的元素。

所以結果將在您的原始數組中,而不是在返回值中。

順便說一句,我會確保我在關聯數組中獲取數據,以便您的第一個子數組的值是第二個子數組中的值的鍵。

+1

非常感謝。它的工作正常。其實我犯了一個錯誤,將array_shift()存儲在一個變量中,然後打印該變量。 – Srimanta 2013-03-08 18:00:00

+1

@Srimanta這就是我所想的:-) – jeroen 2013-03-08 18:00:49

0

試試這個:

$newArray = array_combine(array_values($array[0]), array_values($array[1])); 

如前所述,這是相當很難說與格式。如果您遇到格式問題,請嘗試將<pre>添加到print_r之前的頁面頂部。