• ベストアンサー

php 定義済み変数

たとえばアクセス解析で、 $ref = $_ENV['HTTP_REFERER']; とした場合、リンク元があれば取得できますが、ブックマークからのアクセスの場合エラーになってしまいますよね? こんな感じである値を取得できなかった場合にエラーが出てしまうことを防ぐ書き方はあるのでしょうか? 教えてください。 (サーバーの設定は別としてください) (phpのバージョンは4.3.0です。)

質問者が選んだベストアンサー

  • ベストアンサー
  • kircher
  • ベストアンサー率47% (11/23)
回答No.2

エラーチェックだけなら、 $ref = $_ENV['HTTP_REFERER']; if(empty($ref)){ XXXX エラー処理 }else{ XXXX 通常処理 } あたりで実現できそうです。 if(isset($_ENV['HTTP_REFERER'])){ $ref = $_ENV['HTTP_REFERER']; XXXX 通常処理 }else{ XXXX エラー処理 } こちらは、変数自体がセットされているかを確認できるので、厳密かと思いますが、ちょっと自信がありません。

kei_von
質問者

お礼

ご回答ありがとうございます。 さっそく試させていただきました。 結果はバッチリでした。 emptyという関数を知らなかったので非常に勉強になりました。 初心者なのでまた何か質問すると思いますが、その時はまたよろしくお願いいたします。

すると、全ての回答が全文表示されます。

その他の回答 (1)

noname#101981
noname#101981
回答No.1

エラーにはならず。 $ref="" 空の値になるだけです。 if(!$ref) ↑空の値の場合を判定するにはこうすれば

kei_von
質問者

お礼

ご回答ありがとうございます。

すると、全ての回答が全文表示されます。

関連するQ&A