私はこのようなパスを持っています
apples/oranges/bananas
パスの真ん中のアイテム、この場合はオレンジを取得する必要があります。
それを行う最良の方法は何ですか?strpos と substr を使用して自分で実行できますが、もっと良い方法があると思います...
$path = explode("/", "apples/oranges/bananas");
echo $path[1];
文字列を分解して(そうであると仮定して)、配列から正しいインデックスを取得できます。そのようです:
$string = "apples/oranges/bananas";
$array = explode('/', $string);
echo $array[1]; //outputs oranges
PHP > 5.4での配列の逆参照を自慢するだけです:
echo explode('/', 'apple/oranges/bananas')[1];
もしも
$path = 'apples/oranges/bananas';
あなたができる:
$dir = basename(dirname($path));
文字列の末尾から開始する場合、Windows で動作する必要があります。または
$dir = preg_match('|/([^/]*)|', $path, $m) ? $m[1] : false;
文字列の先頭から開始する場合、Windows では機能しません。
常に 2 つのスラッシュで区切られた 3 つの単語ですか?
はいの場合は、次を試すことができます。
$mypath = explode('/', 'apple/oranges/bananas');
echo $mypath[1]; //gives oranges