为什么$ now2没有工作?php加入时间
$now = date('Y-m-d H:i:s', time());
$now2 = date("Y-m-d H:i:s", strtotime("$now + 0.5 secs"));
或者我怎样才能使它工作?
为什么$ now2没有工作?php加入时间
$now = date('Y-m-d H:i:s', time());
$now2 = date("Y-m-d H:i:s", strtotime("$now + 0.5 secs"));
或者我怎样才能使它工作?
原因其现在的工作是因为PHP
不承认0.5 secs
具有有效
0.5 secs
是不是一个有效的日期格式..但它是一个有效的microtime
尝试
$now = date('Y-m-d H:i:s', time());
var_dump(strtotime("$now + 1 secs"));
输出
int 1334188908
Unix时间戳的分辨率(这是time()
返回的值)仅为1秒。所以你不能给它增加一半的时间。
time()返回自纪元以来秒的数量。它几乎不知道什么。你需要使用microtime()如果你需要这个级别的精度(参见:http://php.net/manual/en/function.microtime.php)
编辑:你当然不能在date()格式中使用microtime,所以你需要事先做一个计算然后使用它。类似:
$now = microtime(true);
$newtime = $now + 0.5;
echo date("Y-m-d H:i:s", round($newtime,0));
根据您的要求,您可能更愿意使用比圆形不同的功能(),使$ NEWTIME和整数再适合与日期()
格式化由于UNIX时间戳有一个决议1秒,那不可能工作。 – deceze 2012-04-12 00:15:30