【PHP】ミリ秒を取得することで制限時間を設けて処理をする

公開日: : 最終更新日:2014/08/14 PHP

スポンサーリンク

PHPで時間制限を設けてタイマーのような処理をするときの制限の付け方として、処理のはじめの時刻と処理の途中の時刻の差分をとって閾値以上であればやめるというものを考えます。

時間の取得は色々あると思いますが細かい指定のできそうなミリ秒を取得したいなと思いますが、しかし、PHPでは直接ミリ秒の取得ができないようなので一度microtimeを使って取得します。
microtimeは現在のUnixタイムスタンプをマイクロ秒で取得することができるのですが、1000倍することでミリ秒になります。

$start = microtime(true) * 1000;
$limit_time = 25000;   //25秒過ぎたらやめる
while(/*何かの条件*/){
/*
* 何かの処理
*/
$now = microtime(true) * 1000;
$difftime = $now - $start;
if($difftime>$limit_time){
echo "時間切れ<br />";
break;
}
}

雑ですがこれでもちゃんと動くのでわるいものではないと思います。

microtime
スポンサーリンク
Amazon

  • このエントリーをはてなブックマークに追加

関連記事

リクルート期間限定ポイントの有効な使い道

はじめに  先日クレジットカードの見直し活動の一環でポイント還元率の

初心者がお金を貯めるための節約・財テク手法まとめ【ポイント還元・投資・税金対策】

はじめに  最近なるべく節約しようと思い、お金周りに関して色々調べて

動画講座を効率的にキャプチャして復習する方法

はじめに  最近、動画媒体の講座などをたまに視聴しています。独学だと

Twitterのオリジナルサイズの画像ファイル(.jpg-large,.jpg-orig等)を一括リネームする

Twitterの画像をオリジナルサイズで保存しようとするとjpg-la

【Unity】他のスクリプトを一括で取得して有効化・無効化を制御する

Unityを使っていて他のスクリプトを一時的に停止させたいと思ったので

テレビの録画をPCやNASで共有する

今までテレビはテレビ用のモニターで見ればいいやと思っていたのですが、さ

【DeepLearning】物体検出手法のSSD(Keras版)を試す (Ubuntu14.04)

はやりのディープラーニングの物体検出手法の一つであるSSDのサンプルを

→もっと見る

  • Author : ががんぼ
    プログラミングやWeb関係で気付いたことについてメモしていく予定。だいたいが備忘録ですが、自分でサンプルを作って動かしてみたりしています。
PAGE TOP ↑