sleepの秒指定は整数のみなので1.5秒はsleep、usleepを組み合わせる
2024/06/21
1.5秒の遅延設定はsleep、usleepを組み合わせる
PHPのプログラムの実行遅延関数は「sleep()」「usleep()」がある
今回の記事は、タイトルのままです。
プログラムの処理を一定時間止める(遅延させる)場合は「sleep()」「usleep()」を使います。
「sleep()」と「usleep()」の違いは、
「sleep()」は 1秒以上の整数秒の時間を遅延させる
「usleep()」は、1秒未満の時間を遅延させる
という仕様になっています。
つまり、「sleep()」に指定できる秒数は「整数値」のため、「sleep(0.25)」のような設定をしても「0.25秒」ではなく「0秒」の遅延となります。
同様に「1.5秒の遅延」をしたい場合に「sleep(1.5)」としても「1.5秒」にはなりません。
そのため、「1.5秒の遅延」をしたいときはどうするか。
下記のように「sleep()」と「usleep()」を続けて記述します。
1 2 |
sleep(1); usleep(500000); |
まぁ、全然難しい話ではないですが、これをズバリ書いている記事に出会えなかったので記事にしてみました。
当たり前すぎて記事にするほどでもないと思われているのかもしれませんが...
「usleep()」に指定するのは「マイクロ秒」単位
「usleep()」に指定できるのは「マイクロ秒」単位です。
「usleep(1000000)」が「1秒」となりますので「usleep(500000)」は「0.5秒」となります。
また、PHPのオフィシャルサイトにも書いてありますが、「usleep()」で 1秒を超える値を指定した場合の挙動は環境によって異なるようですので、使わない方が無難かと思います。
参考サイト・PHPオフィシャルサイト
今回の記事の内容の参考サイトとして、オフィシャルサイトのリンクを貼っておきます。
あわせて参照してください。
https://www.php.net/manual/ja/function.sleep.php
https://www.php.net/manual/ja/function.usleep.php
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
QRコード作成ライブラリ「cakePHP-QR-Code-Helper」をPHPで使うカスタマイズ
CakePHP2用のQRコード作成ライブラリ「cakePHP-QR-Code-Helper」をプレーンのPHPでも使うためのカスタマイズ方法を解説。1ファイルを設置するだけでQRコードが作れるため使い勝手がいい。
-
-
QRコード(二次元バーコード)作成サービスを公開
QRコード(二次元バーコード)を生成するサービス。QRコードにする文字列を入力するだけで QRコードが簡単に作れる。オプションとして、画像サイズ、余白サイズ、エラー訂正レベルがある。
-
-
PHPでスクレイピング。phpQueryとphp-simple-html-dom-parserの比較と設置方法
「PHP スクレイピング」で検索すると「phpQuery」ばかりヒットするが、10年以上も放置されている。なので今も開発が続いている「PHP Simple HTML DOM Parser」をオススメする。
-
-
PHPで配列の値をダブルクオーテーションで囲んでimplodeでカンマ区切りにする方法
PHPで配列の値を、preg_replace関数でクォーテーションで囲み、implode関数で「,(カンマ)」で区切ってテキスト化する方法。この方法であれば配列が空でも分岐の処理は必要なし!
-
-
Basic認証の.htaccess、.htpasswd生成ツールと解説
Basic認証を設定する際に必要となる.htaccess、.htpasswdファイルを生成するツール。ID、PASS、.htpasswdへのパスを入力することで編集する情報を生成します。
-
-
Smartyのテンプレート内の処理で計算、加工をする方法
Smartyのテンプレート上で変数を計算する、加工する方法を解説します。
-
-
数値がMySQLのint(11)に保存できない!PHPの変数が本当にint型か確認!
PHPでintegerとdoubleが混在するような計算をする場合は要注意!計算結果が整数値であっても途中で使用する変数にdoubleの値が入っているときは計算結果がintegerではない場合があります。
-
-
パーミッション(属性)一括変更ツール・WordPress最適化済
WordPressのパーミッション(属性)を一括変更するツールを作成!ファイル、フォルダのパーミッションが一覧表示でき、ファイルを選んでパーミッションの変更が行えます。
-
-
PHPで月末から1ヶ月後「+1 month」を算出すると想定する日付にならない場合がある
PHPでは月末の1ヶ月後が想定した日付にならない場合がある。原因はバグではなくPHPの1ヶ月後の定義によるもの。なので必要とする日付を定義しそれに合わせてDateTime、modifyを使用して算出方法を解説している。
-
-
乱数発生器(パスワード生成サービス)がバージョンアップで高速化!
乱数やパスワードを生成する乱数発生器を高速化!重複しない10桁、20桁の文字列を10万件、20万件と生成することも可能!イベントのキャンペーンのシリアルコードなどにも利用可能!