[英]Why won't the first element of this array show in php?
I have an array containing the months of a year with a switch statement and a while loop but it won't show the first element of the array which is January. 我有一个包含一年中月份的数组,其中包含switch语句和while循环,但不会显示数组的第一个元素是一月。 Can someone please help me fix this issue?
有人可以帮我解决这个问题吗?
$calendar = array (January, February, March, April, May, June, July, August, September, October, November, December);
while($e < sizeof($calendar)) {
$k++;
$days = 30;
$days2 = 31;
switch ($calendar[$e]) {
case $calendar[0]:
echo "Month ",$k,": $calendar[$e] has $days days <br>";
break;
case $calendar[1]:
echo "Month $k: $calendar[$e] has 28 or 29 days <br>";
break;
case $calendar[2]:
echo "Month $k: $calendar[$e] has $days2 days <br>";
break;
case $calendar[3]:
echo "Month $k: $calendar[$e] has $days days <br>";
break;
case $calendar[4]:
echo "Month $k: $calendar[$e] has $days days <br>";
break;
case $calendar[5]:
echo "Month $k: $calendar[$e] has $days days <br>";
break;
case $calendar[6]:
echo "Month $k: $calendar[$e] has $days2 days <br>";
break;
case $calendar[7]:
echo "Month $k: $calendar[$e] has $days days <br>";
break;
case $calendar[8]:
echo "Month $k: $calendar[$e] has $days days <br>";
break;
case $calendar[9]:
echo "Month $k: $calendar[$e] has $days2 days <br>";
break;
case $calendar[10]:
echo "Month $k: $calendar[$e] has $days days <br>";
break;
case $calendar[11]:
echo "Month $k: $calendar[$e] has $days2 days <br>";
break;
}
$e++;
}
As mentioned in the comments, you don't define $e
before using it. 如注释中所述,在使用
$e
之前不要定义它。 As you can see it gives unpredictable results. 如您所见,它会带来不可预测的结果。 Setting it works as expected.
设置它按预期工作。
If you don't mind, please use calendar function cal_days_in_month()
: 如果您不介意,请使用日历功能
cal_days_in_month()
:
$year = 2013
$arr_month_name = cal_info(0)['months'];
for ($month=1; $month < 12; $month+=1) {
$days = cal_days_in_month(CAL_GREGORIAN, $month, $year);
echo "Month $month: $arr_month_name[$month] has $days days <br/>";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.