根据月份自动生成日期

时间:2019-05-05 00:13:24

标签: php html

我想根据月份自动生成天数(数字)。 假设月份是2月,自动生成1到28或29(如果是leap年)的数字

我尝试了以下几行代码,但没有得到想要的东西。谁能解决这个问题?

<select name="dob">
                              <option value="">---Day---</option>

                                <?php

                                  function checkMonth() {
                                      if (date('n') == 4 || date('n') == 5 || date('n') == 8 || date('n' == 11)) {
                                          echo 30;
                                      } elseif (date('n') == 2) {
                                          if (date('L') == 1) {
                                              return 29;
                                          } else {
                                              return 28;
                                          }
                                      } else {
                                          return 31;
                                      }
                                  }

                                  $k = checkMonth();

                              for ($i=1; $i<=$k; $i++) {
                                  echo "<option value=". $i ."> ". $i ."</option>";
                              }
                              ?>

                              </select>

1 个答案:

答案 0 :(得分:-1)

我已修复该错误

下面是正确的代码

<select name="dob">
                              <option value="">---Day---</option>

                                <?php

                                  function checkMonth() {
                                      if (date('n') == 4 || date('n') == 5 || date('n') == 8 || date('n' == 11)) {
                                          return 30;
                                      } elseif (date('n') == 2) {
                                          if (date('L') == 1) {
                                              return 29;
                                          } else {
                                              return 28;
                                          }
                                      } else {
                                          return 31;
                                      }
                                  }

                                  $k = checkMonth();

                              for ($i=1; $i<=$k; $i++) {
                                  echo "<option value=". $i ."> ". $i ."</option>";
                              }
                              ?>

                              </select>

我将echo 30;更改为return 30;,它起作用了...:)