2016-02-12 94 views
0

我的數組是這樣的:如何顯示動態數組的值?

$a = array(
    array('CXLDay' => 8, 
     'CXLRemark' => array(), 
     'CXLFee' =>150 
    ), 
    array('CXLDay' => 5, 
     'CXLRemark' => array(), 
     'CXLFee' =>100 
    ), 
); 

我用這樣的代碼顯示它:

foreach($a as $key=>$value) 
{ 
    echo 'Day = '.$value['CXLDay'].', '; 
    echo 'Fee = '.$value['CXLFee'].'<br>'; 
} 

但是,如果我這樣的陣列變化:

$a = array(
    'CXLDay' => 8, 
    'CXLRemark' => array(), 
    'CXLFee' =>553191.010000 
); 

存在着錯誤,如這個:

注意:未定義指數:CXLDay ...

注意:未定義指數:CXLFee ...

這似乎有必要加上條件,但我仍然感到困惑

如何顯示值動態數組?

非常感謝任何幫助

+1

第一個是多夷爲平地,另一種是平的,如果只是增加一個,要麼檢查索引 – Ghost

+0

@ Ghost,如果(isset($ a ['CXLDay']))'is_array'或者只是一個簡單的'isset' {echo'Day ='。$ a ['CXLDay'] 。 ','; \t echo'Fee ='。$ a ['CXLFee']''
'; \t} \t否則{ \t \t的foreach($ a作爲$密鑰=> $值){ \t回波節='$值[ 'CXLDay'] ''。。; \t echo'Fee ='。$ value ['CXLFee']。''
'; \t} \t}'。像那樣? –

回答

1

下面的代碼示例將在您的示例中輸出這兩個數組。

if(array_key_exists('CXLDay',$a)){ 
    echo 'Day = '.$a['CXLDay'].', '; 
    echo 'Fee = '.$a['CXLFee'].'<br>'; 
}elseif(count($a) && array_key_exists('CXLDay',$a[0])){ 
    foreach($a as $key=>$value){ 
     echo 'Day = '.$value['CXLDay'].', '; 
     echo 'Fee = '.$value['CXLFee'].'<br>'; 
    } 
} 

然而它總是依賴數組中存在的數組鍵'CXLDay'。

+1

非常感謝。它正在工作 –

+0

我需要你幫忙。看看這裏:http://stackoverflow.com/questions/39652796/why-multiple-datepicker-not-working/39652870#39652870 –

0

你錯過了在你的代碼的東西...

$a = array(
    'CXLDay' => 8, 
    'CXLRemark' => array(), 
    'CXLFee' =>553191.010000 
); 

$a = array(
     array('CXLDay' => 8, 
      'CXLRemark' => array(), 
      'CXLFee' =>553191.010000 
     ) 
);