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()」を続けて記述します。
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
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
Smartyのテンプレート内の処理で計算、加工をする方法
Smartyのテンプレート上で変数を計算する、加工する方法を解説します。
-
-
cURLを利用する際の注意点「
&」があるURLは「”」で囲むcURLでURLはダブルクォーテーションで囲む。LinuxでもWindowsでもコマンドでは「&」は意味を持つ文字のためエラー原因になる。クォーテーションは常につけておく方が無難。
-
-
ファイル変更だけ!ECCUBEの本番から開発環境をコピーする手順を解説
ECCUBEを本番から開発環境をコピーする際の手順を解説。PGMメンテに必要な開発環境を構築する手順を解説。ECCUBEの仕組みは簡単なので作業は5分ほど。
-
-
配列の値をテキスト表示する際に「、」でつなげるときの処理方法の一例
配列の値を「、」でつないで出力する際、単純にforeachで繰り返し処理をすると「イヌ、サル、キジ、」となるが文字列最後の「、」を出力しない方法を3つ解説している。
-
-
Smartyの Syntax Errorの原因はスペースかも
Smartyのなかなか原因がつかめない Syntax Errorの原因はスペースかもしれません。
-
-
ECCUBEの管理画面のSSL設定をインストール後に変更する方法
ECCUBEをインストールした後から管理画面のSSL設定を変更する方法を解説します。config.phpファイルのHTTPS_URLとADMIN_FORCE_SSLの値を変更すればOK。
-
-
指定した数で文字列を丸める(n文字目で…にする)関数substr、mb_substr、mb_strimwidthの違い
文字列を指定された数で抜き出すPHPの関数、substr、mb_substr、mb_strimwidthについての解説。似た関数だが引数の指定方法が違ったり、文字数がバイト数か文字数かも違ったり、注意が必要だ。
-
-
PHPで特定の日間の日付を for、strtotimeで表示する
ある特定の間の日付の情報を for文、strtotimeを使って作成し、その解説をしています。
-
-
PHPのcURLでAPIやWebサイトへのアクセス方法。file_get_contentsとの比較
PHPからWebサイトにアクセスしてHTMLを取得、APIにアクセスして情報を取得する場合は、cURLがオススメ。file_get_contentsでも可能だがエラー制御に難がありトラブルのもとになる。
-
-
パーミッション(属性)一括変更ツール・WordPress最適化済
WordPressのパーミッション(属性)を一括変更するツールを作成!ファイル、フォルダのパーミッションが一覧表示でき、ファイルを選んでパーミッションの変更が行えます。