0

このコードを使用してphpマイクロタイムを取得します

$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 に答える