在for循环中使用static关键字?

时间:2016-11-24 09:29:33

标签: php

我想在for循环中使用static关键字。

有可能吗?如果是,那怎么样?

这是我的代码:

$current_time = date('h:i A');
    <select>

        for($i = 0; $i <= 5; $i++) {
            if ($i=0) {
              echo "<option>" . date("h:i A", $current_time) . "</option>";
            }else{
              static $tNow = strtotime("+15 minutes",strtotime($current_time));
              echo "<option>" . date("h:i A", $tNow) . "</option>";
            }
        }
     <select>

当我使用static关键字时,我收到了php错误。

我想显示一个<select>元素,每个选项的步数为15分钟,例如12:0012:1512:30

1 个答案:

答案 0 :(得分:0)

我不知道您为什么要在代码中使用static keyword,但建议您阅读:http://php.net/manual/en/language.oop5.static.php,如何以及何时使用static keyword
如果您的目标是显示下拉列表并获得不同的15分钟时间的选项值 像这个12:00,12:15,12:30 .....这是我的解决方案:

$current_time[0] = date('h:i A');
echo"<select>";
echo "<option>" . $current_time[0] . "</option>";
$step=0;
for($i = 1; $i <=5; $i++) {
    $step=$step+15;
    $current_time[$i] = strtotime("+".$step." minutes", strtotime($current_time[0]));
    echo "<option>" . date("h:i A", $current_time[$i]) . "</option>";
}

echo"</select>";
var_dump($current_time);

此处的工作代码:http://ideone.com/zM0eue

说明:我使用数组来包含strtotime中的所有for loop输出。每次我使用相同的$current_time[0]计算新的$current_time[$i]$step变量每次增加+15。