hypweb.net
XOOPSマニア  最新情報のRSS(サイト全体)
[ 自宅サーバーWebRing |ID=54 前後5表示乱移動サイト一覧 ]

TOP » UsersWiki » nao-pon » blog » 2008-09-04

RSS of nao-pon/blog
Thu 4 Sep 2008
 

PHP で現在のページのURIを取得する方法のまとめ anchor.png

Tag: PHP Tips メモ

Xoops Users Group Japan - Re: urlencode されていないクエリが含まれる時の問題 で GIJOE さんに解説していただいたので、そのまとめ。というかほぼ転記。

$_SERVER['REQUEST_URI']
IISでは設定されない。ただし、これが設定されてない環境でも、XOOPS環境化では common.php の処理で設定し直されるので、common.php 以降の処理であれば利用可能。
? 以降のクエリ文字列も含まれる。
$_SERVER['PHP_SELF']
CGI版でもIISでも正しく設定される。ただし、PATH_INFOを含む。
$_SERVER['SCRIPT_NAME']
CGI版では実際に処理する実行可能スクリプト("/cgi-bin/php"など)となるケースがある。(suPHPな環境ではおそらく大丈夫)

やっぱり、先達はすごいなぁ。勉強になりました。 :-)

ということで、PATH_INFO やクエリ文字列を含まない URI を取得する最も確実な方法は

$uri = $_SERVER['PHP_SELF'];
if (isset($_SERVER['PATH_INFO'])) {
    $uri = preg_replace(
             '#' . preg_quote($_SERVER['PATH_INFO']) . '$#',
             '',
             $uri
           );
}

ということになる。



Front page   Freeze Diff Backup Copy Rename ReloadPrint View   New Page Page list Search Recent changes   Help   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom) Powered by xpWiki
Counter: 56, today: 1, yesterday: 0
Princeps date: 2008-09-04 (Thu) 09:18:31
Last-modified: 2008-09-04 (Thu) 09:45:51 (JST) (4361d) by nao-pon
このページのTopへ
メインメニュー
ログイン

ユーザー名:


パスワード:





パスワード紛失  |新規登録
オンライン状況
25 人のユーザが現在オンラインです。 (1 人のユーザが UsersWiki を参照しています。)

登録ユーザ: 0
ゲスト: 25

もっと...