PHP_PHP チュートリアルでスケジュールされたタスクを実装する方法
うちょめのやり方はこうだとうちょめで分析してみました
1. スケジュールされたタスクをすべてデータベースに保存します
2. ユーザーが操作を行ったり、ページを開くたびに、スケジュールされたタスクが順に実行され、時間が経過すると、ユーザープロセスで実行されます。
うーちょめのスケジュールされたタスクのコードは ./source/function_cron.php にあります上記は、uchome コードでスケジュールされたタスクのおおよその結果の分析にすぎません。誰かが共有する良い方法を持っていることを願っています
ignore_user_abort()
私は少し前にスケジュールされたタスクについて徹底的に研究しました。スケジュールされたタスクには多くのアイデアがあると思いますが、Web に最も適しているのは、DZ や PHPWind と同様のトリガー タイプです。ほとんどの Web アプリケーションも同様であるようです。参考までに、その他にもいくつかお話しましょう
1. 安定したトリガーを提供するには、crontab+wget または ab を使用してスケジュールされたアクセスを提供します
2. nohup + php書き込みデーモン
3. PHP で直接無限ループを記述し、トリガーを提供します。このとき、ループの起動を支援するためにキャッシュまたはデータベースを使用する必要があり、トリガーの頻度を制御するには sleep または usleep を使用する必要があります。
4.crontab+php
5. Web トリガーの方法には違いがあります。1 つは時間トリガー、もう 1 つは定期トリガーです。DZ と PHPWind は両方とも時間トリガーです。
具体的な実装アイデアは簡単に考えられるので詳細は割愛しますホスト コンピューターがある場合は、crontab を使用してコマンド ライン PHP を実行する必要があります
コードでしか書けないものはない
ループを使用する場合は、ループを特定の処理プログラムから分離するのが最善です。そうしないと、メモリが増加し続けます。
今日、PHP マニュアルでこの関数 -ignore_user_abort を発見しました。この関数は、Linux での cron のようなスケジュールされたタスクの実装に役立ちます。実装方法を見てみましょう。
まずはPHPのマニュアルでこの関数の説明を見てみましょう
説明
intignore_user_abort ([ bool $setting ] )
クライアントの切断によりスクリプトが中止されるかどうかを設定します。
つまり、クライアントがブラウザを閉じるかどうかに関係なく、以下のプログラムが実行されます。
パラメータを見てみましょうパラメータ
設定
設定されていない場合、関数は現在の設定のみを返します。
この関数は、ignore_user_abort 関数を有効にするかどうかを決定するパラメーターを受け取ります。
戻り値を見てください:
戻り値
前の設定をブール値として返します。
ここでは前の設定が返されると書かれていますが、テストしたところ、このステートメントは明らかに int 型ではありません。信じられない場合は、php ファイルを書き込むことができます。試して。
ここまで述べましたが、PHP でこの関数を使用してスケジュールされたタスクを実装するにはどうすればよいでしょうか? 別の関数 (set_time_limit0) を使用することもできます。これにより、プログラムの実行時間を無制限に設定できます。 PHP のデフォルトの実行時間は 30 秒です。set_time_limit(0) を使用すると、プログラムを無制限に実行できます。プログラムが実行される前に、ignore_user_abort(1) と set_time_limit(0) を追加するだけです。 例を示します。
コードは以下のように表示されます:
http://www.bkjia.com/PHPjc/372013.html
www.bkjia.com
ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
