php の毎日の自動実行を実現する方法: 1. サーバーに crontab をインストールします; 2. crontab のスケジュールされた実行タスクのリストを表示します; 3. 時間設定ルールに従って設定します。
この記事の動作環境: linux5.9.8 システム、PHP バージョン 7.1、Dell G3 コンピューター。
php を毎日定期的に実行することはできません。実行できるのは Java または C だけです。php はページにアクセスせずにコードを移動しないためです。しかし、国を救う方法はあります。
あなたは、ページ これは毎日定期的に実行するページです。オペレーティング システムに応じて、スケジュールされたタスクを実行し、定期的にこのページにアクセスします。この記事では、Linux システムを例として取り上げます。
PHP はスケジュールされたタスクを実装します
1 |
|
1 2 |
|
1 |
|
1 |
|
1 |
|
1 2 3 4 5 6 7 8 9 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
このステートメントは、Linux 内部 PHP 環境を通じて 2 時間ごとの 0 分に script.php を実行できます。これはそうではないことに注意してください。 URL 経由でアクセスされますが、サーバー環境を介して実行されますが、サーバー環境をバイパスして直接実行されるため、効率は当然高くなります。
/usr/bin/php を使用する必要がある理由については、次のコマンドを使用できます: that php または whereis php
View
crontabでは、実行結果をファイルに出力します。次に、このファイルの実行ステータスを確認します。例:
1 |
|
コマンドの連続実行:
順番に実行 (`;` で区切る)
1 2 3 |
|
ロジックと (区切って) で実行by && )
1 2 |
|
論理 OR で実行: (|| 分割)
1 2 |
|
つまり、戻り値が 0 の場合、論理 AND は次のようになります。 0 でない場合は論理 OR が実行され続けます。通常のプログラムの論理は論理 OR ショートと同じです (`?` が戻り値です)。正しく実行された場合、戻り値は 0 です。 echo $? を通じてテストできます。 "return" ")
combination:
cmd1;
cmd2||cmd3&&cmd4;
を検索してください。cmd5;
最初に cmd1 を実行し、次に cmd2 を実行します。cmd2 の戻り値が 0 でない場合は cmd3 を実行し、cmd3 の戻り値が 0 である場合は cmd4 を実行し、その後順番に実行を続けます
時間設定ルールの例:
1. ルールを 1 分ごとに定期的に実行します:
1 分ごとに実行: */1 * * * *または * * * * *
5 分ごとに実行: */5 * * * *
2. 1 時間ごとに定期的に実行 ルール:
毎時実行: 0 * * * * または 0 */1 * * *
毎日午前 7 時に実行: 0 7 * * *
毎日午前 7 時 10 分に実行: 10 7 * * *
3. ルールを毎日定期的に実行します:
毎日実行 0 0 * * *
4. ルールを毎週定期的に実行します:
Execute each year 0 0 * * 0
5. ルールを毎月定期的に実行します:
Execute 0 0 1 毎月 * *
6. ルールを毎年定期的に実行します:
Execute 0 0 1 each year 1 *
7. その他の例
5 * * * *毎時 5 分に実行される ls コマンドを指定します
30 5 * * * ls 毎日 5:30 に実行される ls コマンドを指定します
30 7 8 * * ls は、ls コマンドを指定します。毎月 8 日の 7:30 に実行される
30 5 8 6 * ls は、毎年 6 月 8 日の 5:30 に実行される ls コマンドを指定します
30 6 * * 0 ls は、実行されることを指定します毎週日曜日の 6:30 に ls コマンドを実行します [注: 0 は日曜日を意味し、1 は月曜日 1 を意味し、以下同様です。また、英語でも表現できます (sun は日曜日を意味し、mon は月曜日を意味します)。 ]
30 3 10,20 * * ls 毎月 10 日と 20 日の 3:30 に ls コマンドを実行します [注: 不連続な複数の期間を接続するには、「,」を使用します]
25 8-11 * * * ls 毎日 8 時から 11 時までの 25 分に ls コマンドを実行します [注: 連続するピリオドは「-」で接続します]
*/15 * * * * ls 毎回 ls コマンドを実行します15 分 [つまり、毎時 0、15、30、45、60 分に ls コマンドを実行]
30 6 */10 * * ls 各月の 10 日ごとに 6:30 に ls コマンドを実行 [つまり、毎月 1、11、21 日の 31 日の 6:30 に ls コマンドを 1 回実行します。 ]
【推奨学習: PHP ビデオ チュートリアル ]
以上がPHPを毎日自動的に実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。