0

我用这段代码来获取 php microtime

$date = round(microtime(true) * 1000);

我得到的回声结果是这样的

1.42020381242E+12

我如何确保微时间只是数字,没有像这样的特殊字符或字符串

1420209804538

在本地主机上一切正常,只得到数字但在服务器上它得到数字和字符串和一个点(。)

问题2

还有我如何在当前的微时间中增加 15 分钟

4

1 回答 1

2

您可以使用filter_var清理变量以仅保存数值,使用FILTER_SANITIZE_NUMBER_INT

例如;

echo filter_var($date, FILTER_SANITIZE_NUMBER_INT); 

使用 Mark Ba​​kers 评论,添加 15 分钟,您只需执行以下操作;

echo filter_var( ($date + 15 * 60 * 1000), FILTER_SANITIZE_NUMBER_INT);

https://eval.in/238951

编辑

您可以使用正则表达式删除任何非数字字符。例如

preg_replace("/[^0-9]/", "", $date);

编辑 2

您可以使用以下正则表达式捕获字符串的最后一部分

$re = "~\s(\d+)~"; 
$str = "12 + 142020602353 "; 
preg_match($re, $str, $m);
echo $m[0];

https://eval.in/238955

于 2015-01-02T13:26:22.097 回答