PHPで現在のURLを取得する方法
PHPで、現在のページのURLを取得する方法について解説します。
URLの取得は$_SERVER変数を使う
現在アクセスしているURLの情報は、$_SERVERというグローバル変数に格納されています。
現在のディレクトリ+ファイル名を取得する
現在見ているページのディレクトリ+ファイルの情報は、$_SERVER['REQUEST_URI']で取得できます。
サンプルコード
echo $_SERVER['REQUEST_URI'];
/php_now_url/
ちなみに$_SERVER['REQUEST_URI']は、「?id=123」などのクエリパラメータも含まれます。
パラメータを除外したい場合は、$_SERVER['SCRIPT_NAME']という変数を使用しましょう。
現在のドメインを取得する
現在見ているページのドメインは、$_SERVER['HTTP_HOST']で取得できます。
サンプルコード
echo $_SERVER['HTTP_HOST'];
kinocolog.com
現在のページURLをフルで取得する関数
「https://」などのプロトコル込みで、現在見ているページをURLをフルで取得できる関数を用意しました。
function nowUrl(){ $url = ''; if(isset($_SERVER['HTTPS'])){ $url .= 'https://'; }else{ $url .= 'http://'; } $url .= $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; return $url; }
実行結果はこちら。
サンプルコード
echo nowUrl();
https://kinocolog.com/php_now_url/
SSL対応かどうかで「http」か「https」か変わってくるのですが、SSL対応の場合は$_SERVER['HTTPS']に「on」という値が入っているので、そちらで判定しています。
必要な際はコピペして使ってください。
以上、PHPで現在のURLを取得する方法、でした。
ディスカッション
コメント一覧
まだ、コメントがありません