WinのタスクスケジューラとPHPとXAMPPでバグ

2014/01/23

PHPをWinのタスクスケジューラで実行するんだけど「時間」がおかしい。

結局は…

Xamppのphp.iniでのタイムゾーンの問題

やりたいのは
・Winのタスクスケジューラでバッチファイルを実行
・バッチファイルでPHPファイルを実行
・PHPファイルはXAMPPのphp.exeを使う
・実行するPHPファイルの内容は「今日」を引数にファイルを書き出し
っていうような感じ。

求めている結果は「今日のファイル」
出力された結果は「昨日のファイル」

調査

諸々ログに出力すれば、早い段階で分かったんだけど…。

まず「今日」じゃなく「昨日」になっているので
・Windowsの時計
をチェック。

例えば「3時」ってのは「午前? 午後?」っていう問題がある。
調べたらWindowsは24時間表記。「午後3時は15時」という風になる。

ということで、Windowsの時計は無問題。

他…どこを調べたら良いか分からずに途方にくれていたら…
「そうだ、ログをだそう!」と気づいた。

ということでPHPファイルに実行日時を出力。
バッチファイル側に標準出力をログに書き出す設定を追加。
すると…実行日時が昨日になっている。

あとはGoogle先生に聞いて…「Xamppのphp.iniのタイムゾーンが~」ってのを見つけて再実行で解決した。

▼まとめ
PHPとXAMPPで時間がずれる

新着(ニュース関連以外)

2017-08-03
formのinputでmaxlengthを使うとFirefoxでバグってた。他のブラウザでも気づかずにバグってたかもしれない。
2017-07-19
折れ線グラフをもう少しゆるやかに・・・というか何というか・・・調べていくと「移動平均」っていう言葉にたどり着いた
2017-07-10
FuelPHPの1.8をダウンロードして使っていたらセッションが使えないということに気付いた。
2017-06-27
MACにWin10をインストールしてみた:再挑戦。
2017-06-25
「簡単」っていうヤツらが多いけど・・・難しいぞ。