ホームページ バックエンド開発 PHPチュートリアル PHPでタイマー機能を実装する

PHPでタイマー機能を実装する

Aug 08, 2016 am 09:23 AM
quot time

以前はJSを使ってタイマー機能を実装できることしか知らなかったのですが、今日のプロジェクトの途中で機能モジュールを実装する必要がありました。 PHP でタイマー関数を実装できればいいのにと思い、オンラインで検索したところ、ignore_user_abort() 関数と set_time_limit() 関数および無限ループを併用することで同様の関数を実現できることがわかりました。最終的にこのプロジェクトではこの機能を使用しませんでしたが、それでも潜在的な利用価値は非常に高いと感じたので、後でインターネット上の情報を参照して以下のようにまとめました:

<?php
    // 1、范例代码:
    ignore_user_abort(true);  // 设置与客户机断开是否会终止脚本的执行。
    set_time_limit(0);        // 设置脚本超时时间,为0时不受时间限制
    ob_end_clean();           // 清空缓存
    ob_start();               // 开始缓冲数据
    while(1){
        echo str_repeat(" ",1024);  // 写满IE有默认的1k buffer
        ob_flush();                 // 将缓存中的数据压入队列
        flush();                    // 输出缓存队列中的数据
        echo "now time is ".date('h:i:s');  // 打印数据,其实是先将数据存入了缓存中
        usleep(1000000);            //延迟一秒(暂停一秒)
    }
    // 该段程序实现的功能是每隔一秒钟输出一次包含当前时间的字符串。

    // 2、说明:
    // 经过测试,范例结果中会出现不连续输出,如果要求实现连续、均匀的输出效果(如输出时间),则应设置缓存;为方便理解,提供相关函数作用说明如下:
    /*
    ①ignore_user_abort(bool):设置与客户机断开是否会终止脚本的执行。
    ②set_time_limit(int seconds)设置允许脚本运行的时间,单位为秒。参数值为0时不受限制。
    ③ob_end_clean():清除服务端缓存的数据
    ④ob_start():开启一个缓存(可嵌套)
    ⑤ob_flush():将缓存中的数据压入队列
    ⑥flush():输出缓存队列中的数据
    ⑦usleep(int m-seconds):以指定的微秒数延缓程序的执行。
    */
    // 注:
    // flush()和ob_flush()的正确顺序应是,先ob_flush()再flush(),不可弄混。
    // usleep()函数可替换成sleep()函数,不同之处在于sleep()的参数是秒。
ログイン後にコピー

上記では、PHP を使用してタイマー機能を実装する方法をさまざまな側面を含めて紹介しましたが、PHP チュートリアルに興味のある友人に役立つことを願っています。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

タイムパッケージの単調クロック処理 タイムパッケージの単調クロック処理 Aug 04, 2023 pm 05:45 PM

今日は主に golang time パッケージの時間適用方法を見ていきます。この 2 つの間の一般的なルールは、時間を伝えるために「ウォールタイム」が使用され、時間を測定するために「モノトニッククロック」が使用されるということですが、他のクロック処理方法もあります。

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Java8 Time APIの使い方 Java8 Time APIの使い方 Apr 28, 2023 pm 12:25 PM

1. 概要 この記事の一部として、既存の Date および CalendarAPI に関するいくつかの問題から始めて、新しい Java8Date および TimeAPI がこれらの問題をどのように解決するかを探ってみましょう。また、LocalDate、LocalTime、LocalDateTime、ZonedDateTime、Period、Duration などの Java8 時間クラス ライブラリのコア クラスとその API についても見ていきます。 2. 古い API (Java 8 以前) のスレッド セーフの問題 - Date クラスと Calendar クラスはスレッド セーフではないため、開発者がこれらの API の同時実行性の問題をデバッグすることが困難であり、それらに対処するために追加のコードを記述する必要があります。 。

Pythonの時刻と日時の違いと使用法は何ですか Pythonの時刻と日時の違いと使用法は何ですか May 02, 2023 am 11:01 AM

1. Python で時刻を表す 2 つの方法: timestamp: 1970.1.100:00:00 を基準とした秒単位のオフセット、一意の時刻タプル struct_time: 合計 9 要素>tm_year: year 1-12> tm_mon: month 1-12> tm_mday: 日 1 ~ 31>tm_hour: 時 0 ~ 23>tm_min: 分 0 ~ 59>tm_sec: 秒 0 ~ 59>tm_wday: 週 0 ~ 6 (0 は日曜日を意味します)>tm_day: 年間の日 1 ~ 366> tm_isdst: 夏時間であるかどうか、デフォルトは -1.ti

Python timeモジュールで時間を取得および変換する方法 Python timeモジュールで時間を取得および変換する方法 May 13, 2023 pm 12:19 PM

Pythontime モジュールの時間の取得と変換 Python の Time ライブラリでは、現在の日付と時刻へのアクセス、さまざまな形式での時刻の出力、指定された時刻の待機など、時間関連の処理を実行できます。 1. 時刻の取得 1.1. タイムスタンプ importtimetimestamp=time.time()#1682737552.5009851 グリニッジ標準時 (GMT) 1970 年 1 月 1 日の 00:00:00 から現在までの合計秒数 1.2. 構造化時間 importtimestruct_time= time。 localtime()#time.struct_time(tm_year=2

PHP 関数「time」を使用して、現在の UNIX タイムスタンプを返します。 PHP 関数「time」を使用して、現在の UNIX タイムスタンプを返します。 Jul 25, 2023 pm 04:42 PM

PHP 関数「time」を使用して、現在の UNIX タイムスタンプを返します。UNIX タイムスタンプは、1970 年 1 月 1 日の協定世界時 (UTC) の 0:00:00 からの合計秒数を指します。 PHP では、組み込み関数「time」を使用して、現在の UNIX タイムスタンプを取得できます。この記事では、この関数の使用方法を説明し、対応するコード例を示します。コード例: &lt;?php$timestamp=time();echo" current

golangの「unknown: time.After」エラーを解決するにはどうすればよいですか? golangの「unknown: time.After」エラーを解決するにはどうすればよいですか? Jun 25, 2023 pm 05:28 PM

Golang は非常に人気のあるプログラミング言語であり、その習得が容易で効率的かつ高速な機能により、ますます多くの開発者を魅了しています。しかし、使用中に、必ずいくつかの問題やエラーが発生します。たとえば、time パッケージで After メソッドを使用すると、未定義: time.After というエラーが発生する可能性があります。この記事ではこのエラーの解決方法を紹介します。 Golang でエクスポートされていない関数名または間違った関数名を使用した場合のエラーの原因を理解する

Go言語をベースにしたタイムパッケージの詳細説明 Go言語をベースにしたタイムパッケージの詳細説明 Jul 21, 2023 pm 01:27 PM

time.Now() は Time 型を返します。場合によっては、他のユーザーがタイムスタンプを提供する場合、次のようにタイムスタンプと時刻の型を逆にする必要があります。使用する必要があるのは time.Unix です。

See all articles