2011-12-09 52 views
0

給定下面的數組,我該如何測試變量$target_date是否等於數組的第一個元素?這就是我要尋找的結果:PHP測試日期是否是數組的第一個元素

$target_date = [Nov 18, 2011] return yes; 
$target_date = [Nov 22, 2011] return no; 
$target_date = [Nov 29, 2011] return no; 

這裏是數組:

Array 
(
[Nov 18, 2011] => Array 
    (
     [C] => 100 
     [I] => 100 
     [M] => 100 
    ) 
[Nov 22, 2011] => Array 
    (
     [C] => 200 
     [I] => 200 
    ) 
[Nov 29, 2011] => Array 
    (
     [C] => 300 
     [I] => -300 
    ) 
) 

感謝您的幫助。

回答

3

這不是陣列中的第一個元素,它是。因此:

foreach ($array as $key => $values) { 
    if ($key == $target_date) { 
     /* Yes! */ 
    } else { 
     /* No! */ 
    } 
} 

如果你想看看第一關鍵的情況下直接循環:

current(array_keys($array)) == $target_date 
+1

更妙的是:'鍵($陣列)== $ target_date'。從技術上講,這取決於數組迭代器的當前位置,但是不使用'foreach'循環是非常罕見的,以至於它永遠不會起作用。 – Jon

+0

@Jon我只是把它作爲一個免責聲明,「除非你修改數組指針」,而不是「永遠不會有問題」,但是,總體上是一致的。 :) – deceze

相關問題