> 15:07:00
Ich habe es selbst geschrieben, aber es fühlte sich nicht einfach genug an
<code>function get_minutes($dest){ $start1 =new DateTime(); $date = $start1 ->format('Y-m-d-H-i-s'); list($year,$mon,$day,$hour,$min,$sec) = explode('-',$date); $start2 = new DateTime($year.'-'.$mon.'-'.$day.' '.$hour.':'.$min); $needle = floor($min/10)*10 +$dest; $needle = $needle > $min ? $needle : $needle +10; $extra = $needle - $min; $timestr = '+ '.$extra.' minutes'; $start2->modify($timestr); return $start2->format('Y-m-d H:i:s'); } echo get_minutes(7);</code>
Lassen Sie uns zunächst den Bedarf analysieren: 7 Minuten, 10 7 Minuten, 20 7 Minuten, 40 7 Minuten, 50 7 Minuten. Außerdem beträgt die Differenz von 57 Minuten zum nächsten Knoten beträgt ebenfalls 10 Minuten.
Denn die Gesamtzahl der Sekunden vom 1. Januar 1970 um 00:00:00 Uhr GMT bis heute.
Die ersten 7 Minuten betragen 420 Sekunden, dann werden 600 Sekunden hinzugefügt.
<code>function get_minutes($dest){ $start1 =new DateTime(); $date = $start1 ->format('Y-m-d-H-i-s'); list($year,$mon,$day,$hour,$min,$sec) = explode('-',$date); $start2 = new DateTime($year.'-'.$mon.'-'.$day.' '.$hour.':'.$min); $needle = floor($min/10)*10 +$dest; $needle = $needle > $min ? $needle : $needle +10; $extra = $needle - $min; $timestr = '+ '.$extra.' minutes'; $start2->modify($timestr); return $start2->format('Y-m-d H:i:s'); } echo get_minutes(7);</code>
Was für eine seltsame Anforderung.
<code class="php">$time = time(); echo date('Y-m-d H:i:s',$time); $last = $time%600; $last = $last<420?420-$last:1020-$last; echo '<br />'; echo date('Y-m-d H:i:s',$time+$last);</code>
<code>function get_minutes($dest) { if ($dest >= 10) { throw new Exception('param error!'); } $mitute = date('i'); $unit = $mitute % 10;//个位分钟数 $offset = $dest - $unit; if ($dest <= $unit) { $offset += 10; } return date('Y-m-d H:i:00', strtotime('+' . $offset . ' minutes')); } echo get_minutes(7);</code>
Geben Sie mir ein Beispiel. 7 ist darin fest codiert. Sie können es entsprechend Ihren Anforderungen ändern.