2017-09-24 42 views
-2
Array 
(
    ['data'] => Array 
     (
      [0] => a 
      [1] => b 
      [2] => c 
      [3] => d 
     ) 

    ['id'] => Array 
     (
      [0] => 5 
      [1] => 6 
      [2] => 7 
      [3] => 8 
     ) 

) 

該數據($ form_data)。如何訪問這個數組?我無法與以下訪問:訪問從表單來的陣列值

$data= $form_data['data'][0]; or 
$id = $form_data['id'][0]; 

我只是用array_values()函數訪問和以下內容:

$data= $form_data[0][0]; or 
$id = $form_data[0][0]; 

,但我不想用array_values()函數。爲什麼我無法自然地訪問我的數組?

+2

也許是因爲你已經有了這些報價爲你的關鍵的一部分,如果是從print_r的輸出()....'$數據= $ form_data [「‘數據’」] [0];'....或更好的是,固定鍵無論要生成此數組 –

+1

使用'$ data = $ fo獲得什麼錯誤? rm_data [ '數據'] [0];'?這應該適用於該陣列。 – MinistryofChaps

+0

@MarkBaker它們是由print_r()輸出的。數據來自表單中的數組。等等:以及更多的輸入。 – bukalemun

回答

1

這正常的男人,一定要正確地構建陣列。此代碼完美無瑕。關於如何構建陣列的信息不多,所以我希望這個模型能夠幫助您。

<?php 
$array = array(
    'data' => array 
     (
      0 => 'a', 
      1 => 'b', 
      2 => 'c', 
      3 => 'd' 
     ), 

    'id' => array 
     (
      0 => 5, 
      1 => 6, 
      2 => 7, 
      3 => 8 
     ) 
); 

現在你可以用你喜歡的方式回調陣列上:

$a = $array['data'][0]; 
$b = $array['data'][1]; 
$c = $array['data'][2]; 

echo $a . $b . $c; 
// outputs 'abc' 

又撥打了id

$fiv = $array['id'][0]; 
$six = $array['id'][1]; 
$sev = $array['id'][2]; 

echo $fiv . $six . $sev; 
// outputs '567'