いくつかの異なるデータベースクエリを取得するための 1 つの関数を作成しています。現在は順調に進んでいますが、定義されたパスから最後のディレクトリ名を取得するだけで済みます。
$qa_path=site_root('/learnphp/docs/');
docs
上記のパスからのみ取得したい。ここで site_root は何もない$_SERVER['DOCUMENT_ROOT']
ので、どうすれば取得できdocs
ますか?
ありがとう
最も簡単な方法は、次のように使用するbasename($yourpath)
ことです:http: //php.net/basename
次のように、文字列の最後にファイルが含まれている場合、提供された回答は機能しません。
basename('/home/mypath/test.zip');
与える
test.zip
したがって、文字列にファイルが含まれている場合は、最初にディレクトリ名を付けることを忘れないでください
basename(dirname('/home/mypath/test.zip'));
与える
mypath
explode('/', '/learnphp/docs/')
文字列を配列の場所に分割してみてください。次に、最後の場所を取得します。
詳細は次のとおりです:http: //php.net/manual/en/function.explode.php
これはあなたを助けます
$qa_path=site_root('/learnphp/docs/');
$q_path = explode ("/", $qa_path);
$lastV = end($q_path);
この単純なスニペットを使用できます。
$qa_path=site_root('/learnphp/docs/');
$qa_path = explode("/", $qa_path);
$qa_path = $qa_path[count($qa_path) - 1];
$qa_path=explode('/', '/learnphp/docs/');
echo $qa_path[2]; // output docs
これにより、現在のディレクトリ名が得られます。
echo basename(dirname(__FILE__));