質問

ここに私の.htaccessのルールがあります:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*)/(.*)$ index.php?var1=$1&item=$2&var2=%{REQUEST_URI} [NC,L]
RewriteRule ^(.*)$ index.php?var1=$1 [NC]

ここでは(最終的には最後のドット付き)URLは次のとおりです。 http://localhost/test/secondvar.

問題が後続ドットvar2GET変数内部に来ていないことである

私は、上記のURLで結果をprint_r($_GET)を使用し、ここにあります:

Array ( [var1] => test [var2] => secondvar [uri] => /test/secondvar. )

だから私の質問は、私は、VARにパラメータとしてURLからその最後のドットを得るのですか、ですか?あなたが見ることができるように、REQUEST_URIは、Apacheは、ドットの知っていることを示しています。

私はGETパラメータとしてパスを送ると、PHPからURIのパスを読むために世話をすることはできません知っているが、私は複雑すぎる場合には、ドットは、今後、どのようにそれを修正するものではない理由を知りたいですむしろ直接PHPソリューションのために行く。

EDIT:ドット末尾が、末尾だけでなく?あまりにも... = [

役に立ちましたか?

解決

これは、ちょうどPHPの除外は、ドットを末尾のことかもしれません。私は、彼らは多くの場合、アンダースコアにGET / POSTでドットのを変換することを知っています。私はどうなる

explode('/',$_SERVER['REQUEST_URI'])
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top