ホームページ >バックエンド開発 >PHPチュートリアル >URIを取得すると、サブディレクトリに互換性のあるファイルが存在します

URIを取得すると、サブディレクトリに互換性のあるファイルが存在します

WBOY
WBOYオリジナル
2016-07-25 09:02:33848ブラウズ
$_SERVER['REQUEST_URI'] は Apache でのみ使用できる(テストされていない)と言われているため、Apache とのみ互換性があります。

http://example.com/URIRouter.php/Hello/World
または
http://example.com/dir/URIRouter.php/Hello/World

戻り値: Hello/World


.htaccess を設定した後:

http://example.com/Hello/World
または
http://example.com/dir/Hello/World

戻り値: Hello/World








  1. $requestURI = trim($_SERVER['REQUEST_URI'],'/');
  2. $appPath = trim(dirname($_SERVER['SCRIPT_NAME']),'/');//ディレクトリを取得します
  3. $fileName = trim(str_replace(dirname($_SERVER['SCRIPT_NAME']),'', $_SERVER['SCRIPT_NAME']),'/');//ファイル名を取得します
  4. echo trim(str_replace($fileName) , '',trim(str_replace($appPath,'',$requestURI),'/')),'/');
コードをコピー
  1. RewriteEngine On
  2. RewriteCond %{REQUEST_FILENAME} !-f
  3. RewriteRule ^ URIRouter.php [QSA,L]
コードをコピー


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。