2016-12-14 12 views
0

要求パスします。http:// localhostの/ 1/2 /#例/

print_r($_SERVER['REQUEST_URI']); 

予想:/1/2/#例/

実際:PHPはそもそもアレイを作成しているので、何の影響も及ぼさないurldecodeを使用/ 1/2/

。はい、これは正式なディレクトリ名ではありませんが、PHPでリクエストされたURIを特定する別の方法がありますか?

+0

これが '#Example'という名前の実際のフォルダであれば、urlは'/1/2 /%23 Example/'になるようにこのページへのリンクでurlencodeする必要があります。 URLハッシュ(#何か)は決してPHPに送られません。それはjavascriptのクライアント側で利用可能です。 –

+0

https://tools.ietf.org/html/rfc3986#section-3.5 "を参照してください。" ...フラグメント識別子は、スキーム固有の URIの処理では使用されません。その代わりにフラグメント識別子は、逆参照の前にURIの残りの部分から に分けられます。したがって、フラグメント自体内の 識別情報は、URIスキームにかかわらず、ユーザエージェントによってのみ逆参照されます。サーバー – Reeno

答えて

0

#パルマはサーバーに送信されません!

+0

詳しいことを教えてください。 – John

+1

ああ、右...それについて忘れてしまった... PHPはそれを無視する。私はそれを完全に忘れてしまった。 – John

+0

@John記録のために、PHPは「無視」しません。これはブラウザによって削除され、PHPに送られることさえありません。 –

関連する問題