.htaccessでリライトしている場合の、URI上のスクリプト名を取得する

Posted by booyaa on 2月 20, 2010 in PHPで開発 |

たとえば

http://www.example.com/test.html

へリクエストをした場合、リライトしていなければ

basename($_SERVER[‘SCRIPT_NAME’])

で「test.html」が取得できますね。

しかし、例えばリライトしていて実際は
index.php?script=test
がリクエストされている場合は

「index.php」が取得されてしまいます。

ここで、「text.html」を取得するには、ちょっと面倒ですが$_SERVER[‘REQUEST_URI’]を利用します

  //リクエストしたURIを解析する
  $url_parts = parse_url($_SERVER[‘REQUEST_URI’]);

  //スクリプトの取得
  $script_name = basename($url_parts[‘path’]);

これで一応取得できます。

ただ、

http://www.example.com/test/

へアクセスした場合は
「test」が取得されてしまうので、注意してください。

タグ:

4 Comments

frank
8月 26, 2014 at 2:26 PM

.

спасибо за инфу!…


 
Willie
8月 26, 2014 at 4:39 PM

.

спс….


 
Eric
8月 26, 2014 at 9:58 PM

.

tnx!!…


 
virgil
8月 27, 2014 at 2:22 AM

.

спасибо за инфу….


 

Reply

Copyright © 2024 ブーヤーの技術開発メモ All rights reserved. Theme by Laptop Geek.