0

mor_start に 10:00:00 という値があり、これは mysql データベースの time タイプであり、15 分ずつ増やしたいと考えています。

$tim=$values['mor_start'];
$date = date('H:i:s', strtotime($tim));
echo $date;

上記のコードは 10:00:00 を表示します

しかし、次のコードで時間をインクリメントしようとすると、エラーが発生します: 注意: 適切に形成されていない数値が発生しました

$tim=$values['mor_start'];
$date = date('H:i:s', strtotime("+15 minutes",$tim));
echo $date;
4

4 に答える 4

1

複数回呼び出すstrtotime()のは少しやり過ぎです。次のデモのように、 DateTime 拡張機能を使用したコードはより高速な (そしてより美しい) 例です。

echo date_create('10:00:00')->modify('+15 minute')->format('H:i:s');

このデモをローカルホストでテストして、違いを確認してください。1e6ループでの私の結果は次のとおりです。

add15min_v1() has looped 1000000x times in 23.47sec.
add15min_v2() has looped 1000000x times in  6.81sec.
于 2013-11-05T10:21:14.180 に答える
0

これを試して

$date = date('H:i:s', strtotime("+15 minutes", strtotime($tim)));

http://php.net/manual/en/function.strtotime.php

于 2013-11-05T09:27:51.343 に答える