【发布时间】:2018-10-22 10:22:31
【问题描述】:
以下是我在一段 PHP 代码中使用的关联数组,它使用 SQL 数据库中的数据创建了一个有组织的性能日期和信息表。代码似乎没有问题(对我来说),但在网页加载时表现不正确(某些日期没有出现)。
$months = array(
01 => 'January',
02 => 'February',
03 => 'March',
04 => 'April',
05 => 'May',
06 => 'June',
07 => 'July',
08 => 'August',
09 => 'September',
10 => 'October',
11 => 'November',
12 => 'December',
);
当我运行 'var_dump' 时,输出如下:
array(11) {
[1]=> string(7) "January"
[2]=> string(8) "February"
[3]=> string(5) "March"
[4]=> string(5) "April"
[5]=> string(3) "May"
[6]=> string(4) "June"
[7]=> string(4) "July"
[0]=> string(9) "September"
[10]=> string(7) "October"
[11]=> string(8) "November"
[12]=> string(8) "December" }
'August' 的整行缺失,'September' 的键现在是 [0]。
谁能解释我的代码中的错误在哪里?
免责声明:我已经通过从前九个键中删除前导零解决了这个问题,但我对它为什么重要感到困惑?提前感谢您的任何解释。
【问题讨论】:
-
@Nick 很棒的发现。那是一模一样的副本。
-
@mickmackusa 我一直在关注“这是...的副本”链接! :)
-
对了。那么,很高兴得到帮助。
-
@mickmackusa 感谢您的编辑并指出答案。作为一名业余编码员,我没有使用八进制数,只有十进制、十六进制和二进制;我不知道导致它被解释为八进制的前导零!
-
当然。对于不熟悉很少使用的八进制数的人来说,这是一个偷偷摸摸的调试事件。编码愉快。
标签: php type-conversion integer octal zero-padding