PHPによるカレンダーの質問、コンピューターカレンダーを読んでください

StackOverflow https://stackoverflow.com/questions/6345347

  •  27-10-2019
  •  | 
  •  

質問

だから私は基本的なアイデアを持っているので本当に困惑していますが、あなたの専門知識のいくつかを探しています。

私がやろうとしていること:基本的には、Twilioを使用してアプリを書きたいと思っています。そのアプリが行うことは、私のWebホストのPHPファイルで呼び出し、「PHPコードをトリガーする」ことです

ここで助けが必要なのは、コンピューターの週のカレンダーのPHPに記録を保持する方法です。それが意味するのは、管理者のような人が私が彼らのために書いた特定のコードを持っている場合、そしてそのコードは1週間ずっと自動的に実行されますが、彼らがそのコードを実行したくない特定の週は、代わりに別のコードを実行したいその週。 PHPを使用して、1週間が終了したときに1週間を追跡するか、コンピューター画面の右下にあるそのカレンダーを使用して追跡するにはどうすればよいですか。その管理者の不規則なコードを実行する必要はなく、通常の自動化された実行コードに戻ります。

あなたがまだ私が話していることを知らないなら。もっと説明しようと思います。 2つの個別のコードを考えてください。 1つのカスタムともう1つは自動化されています。自動化は常に自動的に実行されます。しかし、ある日、管理者はその週に選択します。彼は通常のように自動コードを実行するという通常のシェドルに従いたくありません。代わりに、彼はカスタムコードを実行したいと思います。いつものように。

それがより明確になることを願っています。 PHPでは日付が与えられていることを知っています。しかし、私はこれを行う方法について本当に専門家の意見が必要です。

役に立ちましたか?

解決

一般的に、このようなもののために、すべてのスクリプト/ユーザーの組み合わせに対して「NEXTRUN_DATETIME」を生成します。デフォルトでは、あなたの場合は7日間の繰り返し間隔があります。

ユーザーが今週それを実行したくない場合、彼らはN日を「プッシュ」することができ、通常の更新間隔がその後適用されます。 1回限りのショットを取得するには、0または-1の更新間隔がそれを示すことを許可します。

この種のことを使用すると、スクリプトが更新される(または保存、実行、再スケジュール)になると、次の日付がある場合は次の日付を計算できます。そこから、それは比較的単純なCronジョブであり、スクリプトが実行されるように最後のn分を確認する必要があります。

他のヒント

クライアントマシンがサーバーとはまったく異なるカレンダーで実行されていない限り、クライアントの日付が何であるかを疑問に思うのはなぜですか?クライアントとサーバーが異なるタイムゾーンでない限り、クライアントの日付は、真夜中頃に数時間を除き、サーバーの日付と同じになります。

同様に、なぜサーバー側のコードをトリガーするためにクライアントに依存しているのですか?これが定期的に発生する場合は、Cronまたはサーバーで利用可能なものを使用してコードを自動的に実行します。管理者が実行されるコードをオーバーライドしたい場合は、実行されたものを変更するインターフェイスを提供できます。サイトのボタンをクリックすると、スクリプトAの代わりにスクリプトbを実行するように時限ジョブを伝えるフラグがどこかに設定されています。

私は同様のことをしました。その日(月曜日、日曜日など)に基づいて、私はPHPで何か違うことをします。

これが私がそれをした方法です:

$today = date('w');
if ($today== 0){
    //its sunday
    exec('rmdir C:\myApp\oldLogs');
}
else{
    echo '1 -> monday, 2-> tuesday etc...'
}

たとえば、文字列から日付を作成することもできます

$date = strtotime("8 days ago 14:00");
/*
  or "Monday next week", "+1 week 2 days 4 hours 2 seconds","yesterday noon","10 September 2000" etc...
*/      
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top