高精度の時刻を生成するphpの例

WBOY
リリース: 2016-07-25 09:10:11
オリジナル
1131 人が閲覧しました
  1. $start = microtime(true);
  2. for($i = 0; $i <1000; $i++) {
  3. preg_match('/age=d+/',$_SERVER[ 'QUERY_STRING']);
  4. }
  5. $end = microtime(true);
  6. ?>
コードをコピー

microtime() でのオプションのパラメーターの使用のサポートは、php 5.0.0 で追加されました。引数なし、または true に変換できない引数を指定した場合、または PHP の以前のバージョンでは、microtime() は、エポック以降の Unix 時間のマイクロ秒部分、スペース、およびエポック番号以降の秒数を返します。 。たとえば、戻り値「0.41644100 1026683258」は、エポックから「1026683258.41644100 秒」が経過したことを意味します。

マイクロ秒を含む時間値は、一意の ID を生成するのに役立ちます。プロセスが 1 マイクロ秒以内に同時に複数の ID を生成しない限り、マイクロ秒を含む時間値と現在のプロセスの ID を使用して一意の ID 値を形成することが保証されます。

別の例を見てみましょう: microtime() (返された文字列形式) を使用してそのような ID を生成します。

例 2: microtime() を使用して ID を生成する

  1. list($micro秒,$秒) =explode(' ',microtime());
  2. $id = $秒.$マイクロ秒.getmypid();
  3. ?>
コードをコピー

注: 例 2 は、マルチスレッド システムではあまり信頼できません。同じプロセスの 2 つのスレッドが同じマイクロ秒以内に microtime() を呼び出す確率は自明ではない (ただし、非常に小さい) ためです。



ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート