1

私はいくつかのアドバイスを探しています。

Rignt では、cron でスケジュールした一連の php スクリプトを取得しました。それらは私のローカル マシン上で実行され、mysql データベースからデータを取得したり、自動化された電子メールを送信したりします。それらを実行するには、crontabに次のようなものがあります。0 7 * * 1 /usr/bin/php /phpscripts/script.php

これらのスクリプトをすべて Windows マシンに移行する必要があります。Windows タスク スケジューラを使用してスクリプトを実行する予定ですが、実際の php スクリプトをローカルで実行するにはどうすればよいですか? 私が理解していることから、Apacheサーバーを実行するにはxamppのようなものが必要ですか? 必要なのは、crontab の /usr/bin/php に相当する Windows だと思います。

4

2 に答える 2

0

必要なときに実行するようにタスクを設定します (時間など)

これをにポップしますcommand

C:\Path\to\php.exe -f "C:\Path\to\file.php"

編集: CLI を使用してファイルを実行するときに使用する 2 つ目の php.ini を設定することもできます。これには、最大実行時間などの制限はありません。非常に便利な違いであり、(潜在的に) 長い実行スクリプトの実行により適しています。

php-cgi.iniこれを行うには、ファイルが存在する PHP フォルダーにファイルを作成しphp.iniます。これは、PHP ファイルが CLI から実行されるときに自動的に使用されます (スケジュールされたタスクが実行される方法です)。

また、Windows スケジューラは、スクリプトが失敗する原因となるエラーで単純に終了することに注意してください。そのため、スクリプトが早期に終了する場合に備えて、追加のログを実行することをお勧めします。

于 2012-08-28T11:24:05.450 に答える
0

PHP のインストール

をインストールする必要はありませんxammp。PHP のみをインストールできます。Windows の PHP インストール ガイドを参照してください。

XAMP をインストールする場合は、次php.exe-fフラグを使用して を見つけた後、PHP スクリプトを実行できます。

C:\Xampp\php\php.exe -f C:\Xampp\htdocs\my_script.php

PHP ファイルの実行

PHP をインストールしたら、スクリプトの実行方法について、Microsoft Windows のコマンド ライン PHP マニュアルを参照してください。ページには、phpファイルを実行可能にする方法の説明があるため、次のように実行できます。

"C:\PHP Scripts\script" -arg1 -arg2 -arg3

コマンドの実行に管理者アカウントを使用していることを確認してください。そうしないと、権限の問題が発生する可能性があります。詳細については、コマンド ラインでの PHP の使用の概要を参照してください。

タスクのスケジューリング

に行きStart -> Programs -> Accessories -> System Tools -> Scheduled Tasks

  1. [スケジュールされたタスク] ウィンドウの空白の場所を右クリックし、[新規] -> [スケジュールされたタスク] を選択します ([ファイル] -> [新規] -> [スケジュールされたタスク] からもアクセスできます)。
  2. 新しいタスクに名前を付けてください (「Bill」はどうですか? 彼は Bill のように見えますよね? 「Mr. B. Evolution, II」 とても威厳があります。)
  3. 新しいタスクをダブルクリックして、プロパティ ウィンドウを開きます (または [ファイル] -> [プロパティ])。
  4. [タスク] タブで、上記のスクリプトのテストに使用したのと同じコマンドを入力します。たとえば、次のように入力します。

    C:\PHP\php.exe "C:\Inetpub\wwwroot\blogs\cron\cron_exec.php"

  5. [スケジュール] タブに移動し、タスクを実行する時間と頻度を入力します。スケジュールはデフォルトで 1 日 1 回実行され、基本的な使用には問題ありませんが、必要に応じて微調整してください。
  6. 残りのフィールドは、あなたがエースで、何をしているのかわかっていない限り、そのままにしておくことができます。
  7. [OK] をクリックして完了です。
詳細については、ウィンドウのスケジュールされたタスクの設定 をご覧ください。

于 2012-08-28T11:38:20.950 に答える