2012-03-16 10 views
1

を表示していない月のアレイ月の配列は私が持っている適切な値

$month = array(
    01 => "January", 
    02 => "February", 
    03 => "March", 
    04 => "April", 
    05 => "May", 
    06 => "June", 
    07 => "July", 
    08 => "August", 
    09 => "September", 
    10 => "October", 
    11 => "Novemeber", 
    12 => "December" 
); 

のようなしかし、私はこの

Array 
(
    [1] => January 
    [2] => February 
    [3] => March 
    [4] => April 
    [5] => May 
    [6] => June 
    [7] => July 
    [0] => September 
    [10] => October 
    [11] => Novemeber 
    [12] => December 
) 

それが0と9月を表示し、8月の月があるように、このことを表示しますprint_rときディスパレーションしない。

いずれにせよ、この問題の原因を教えてください。引用符を追加
おかげ

答えて

1

Nubmber 0から始まるはoctal constatsとして解釈されます。

89は、8進数、有効桁数ではありませんので、0809は無効数字であり、両方がちょうど0と解釈。 「08」の文字列であっても算術演算の場合には、通常の10進整数として解釈されます:

"echo '08'+'08'; // 16 

したがって、使用して文字列には、あなたのケースのために安全でなければなりません。

+0

大きな説明のためにありがとうkirilloid – Shamsher

4

試してみてください。


$month = array(
    "01" => "January", 
    "02" => "February", 
    "03" => "March", 
    "04" => "April", 
    "05" => "May", 
    "06" => "June", 
    "07" => "July", 
    "08" => "August", 
    "09" => "September", 
    "10" => "October", 
    "11" => "Novemeber", 
    "12" => "December" 
); 
+0

Thanx Sudhir作品 – Shamsher

関連する問題