これはよくある質問のようですが、私の探しているもののどれもそうではありません。ウェブサイトがある場合:PHP - 現在のURLを取得
www.example.com/folder:
www.example.com/test.php
は私が "test.phpを" と、それはのようなものだ場合を引っ張るしたいです/folder1/test.php
もう一度 "test.php"をプルする必要がありますが、すべてがページの代わりに正確なパスを引っ張っているようです。助言がありますか?
これはよくある質問のようですが、私の探しているもののどれもそうではありません。ウェブサイトがある場合:PHP - 現在のURLを取得
www.example.com/folder:
www.example.com/test.php
は私が "test.phpを" と、それはのようなものだ場合を引っ張るしたいです/folder1/test.php
もう一度 "test.php"をプルする必要がありますが、すべてがページの代わりに正確なパスを引っ張っているようです。助言がありますか?
$query = $_SERVER['PHP_SELF'];
$path = pathinfo($query);
$what_you_want = $path['basename'];
Voila
$filename = basename($_SERVER['REQUEST_URI']);
の場合: - これはあなたの要求されたファイルの名前を取得します
は非常に非常に涼しいありがとう! –
問題はありませんが、答えとして設定することを忘れないでください! :) –
短いバージョン: '$ what_you_want = basename($ _ SERVER ['PHP_SELF']);' – Cyclone
$file = $_SERVER["SCRIPT_NAME"];
$break = explode('/', $file);
$pfile = $break[count($break) - 1];
これは "/folder1/folder2/test.php"となります –
@Howdy_McGee:本当ですか? '$ pfile'は' test.php'を保持するだけです。 –
@Howdy_McGeeがテストしてくれて、それは私のために働いています: http://localhost/test1/test2/file.phpは "file.php"を出力します –
(ちょうどあなたがmod_rewriteのを使用している場合は、ファイルの、本物ではない場所に呼び出さURLに基づきます) http://www.example.com/testing01.php
とhttp://www.example.com/x/y/z/testing01.php
両方はあなたを与える:
testing01.php
これは受け入れられた答えの2倍です。 –
トップの回答とほぼ同じですが、情報の目的でトップの回答が詳細に分かれています。IMO –
@Howdy_McGee:私は同意しません。基本的な違いは、私たちが本当に示すものです。あなたは「_現在のURLを取得_」について尋ねました。 [documentation](http://php.net/manual/en/reserved.variables.server.php)によると: '$ _SERVER ['REQUEST_URI']は、このページにアクセスするために与えられたURIを取得します。 $ _SERVER ['PHP_SELF'] 'は" _現在実行中のスクリプトのファイル名、ドキュメントルート(。)_ "と等価です。例えば、 '/index.html'上記と同じであってもなくてもよい。私は私の答えの違いについて説明しました( 'mod_rewrite'に関する部分)。 – Tadeck
をなぜあなたはURLを求めていない、この質問の対象で、「現在のURLを」持っていますか?また、mod_rewriteがwww.exemple.com/testのURLを強制的にmod_rewriteに書き換えてtest.phpに書き換えた場合は、それはtest.phpかテストですか? – eis