我用这段代码来获取 php microtime
$date = round(microtime(true) * 1000);
我得到的回声结果是这样的
1.42020381242E+12
我如何确保微时间只是数字,没有像这样的特殊字符或字符串
1420209804538
在本地主机上一切正常,只得到数字但在服务器上它得到数字和字符串和一个点(。)
问题2
还有我如何在当前的微时间中增加 15 分钟
您可以使用filter_var
清理变量以仅保存数值,使用FILTER_SANITIZE_NUMBER_INT
例如;
echo filter_var($date, FILTER_SANITIZE_NUMBER_INT);
使用 Mark Bakers 评论,添加 15 分钟,您只需执行以下操作;
echo filter_var( ($date + 15 * 60 * 1000), FILTER_SANITIZE_NUMBER_INT);
您可以使用正则表达式删除任何非数字字符。例如
preg_replace("/[^0-9]/", "", $date);
您可以使用以下正则表达式捕获字符串的最后一部分
$re = "~\s(\d+)~";
$str = "12 + 142020602353 ";
preg_match($re, $str, $m);
echo $m[0];