ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

Webからの実行とコマンドからの実行では取得できる値が違う

当たり前ですが、同じプログラムでも、Webサーバーと連動させてブラウザからアクセスした場合と、cronで実行した場合では、取得できる情報に違いがあります。

PHPで作成したプログラムをWebサーバーと連動させてブラウザからアクセスした場合、

$_SERVER["REQUEST_URI"]

PHP: $_SERVER - Manual
の値は期待したとおりに取得できますが、cronで実行した場合は期待したとおりに値を取得できません。

f:id:AJYA:20180320232613j:plain
photo credit: catsocmedia Contributing to Drupal (2) via photopin (license)

取得したい値がわかっていたので、

__FILE__

PHP: 自動的に定義される定数 - Manual
を使って値を取得して対処しました。