未定義のサーバ変数($_SERVER)を初期化しておこうよ。
篠原 隆司
たしか、携帯電話用のGoogleアドセンスを使おうとしてて、
Notice: Undefined variable:
ってエラーが出て書いたコード。
ちなみに、エラーレベルは、
error_reporting(E_ALL | E_STRICT);
厳密にチェックしてくれなくっちゃ、怖くてソース書けませんです。
携帯電話用のGoogleアドセンスで、PHP版を使うと、$_SERVERの値を求められるのね。
で、状況によっては$_SERVERの中身が全部定義されてないこともあって、E_STRICTにしてると、『変数が定義されていないよ』って上記のエラーが発生する。
んなわけだから、コードの最初のほうで、$_SERVERを初期化しちゃいましょう。
/*
* サーバ変数が未定義なら空をセットする
*/
foreach (array(
'HTTPS', 'HTTP_HOST', 'REMOTE_ADDR', 'HTTP_REFERER', 'REQUEST_URI'
, 'HTTP_USER_AGENT', 'HTTP_UA_PIXELS', 'HTTP_X_UP_DEVCAP_SCREENPIXELS'
, 'HTTP_ACCEPT', 'HTTP_X_DCMGUID'
) as $value){
if ( ! isset($_SERVER[$value])) $_SERVER[$value] = '';
}