2017-09-24 40 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'