的中間部分我有這樣需要獲取路徑
apples/oranges/bananas
我需要在路徑中間項的路徑,在這種情況下橙子。
這樣做的最佳方法是什麼?我可以用strpos和SUBSTR做我自己,但我想有一個更好的辦法...
的中間部分我有這樣需要獲取路徑
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
如果
$path = 'apples/oranges/bananas';
你可以這樣做:
$dir = basename(dirname($path));
,如果你想從字符串的結尾開始,並應在Windows上工作,或者
$dir = preg_match('|/([^/]*)|', $path, $m) ? $m[1] : false;
如果你想在beginn字符串,並不會在Windows上工作。
變得花俏了嗎? – Neal 2012-08-07 20:26:10
它總是用2個斜槓分隔3個單詞嗎?
如果是,你可以嘗試:
$mypath = explode('/', 'apple/oranges/bananas');
echo $mypath[1]; //gives oranges
只是爲了炫耀陣列PHP提領> 5.4:
echo explode('/', 'apple/oranges/bananas')[1];
語法會讓新手感到困惑,但更有經驗的編程人員可以理解在這一行上發生的管道/鏈接的數量。 – 2012-08-07 22:26:24
取決於他們對其他語言的熟悉程度。但否則,同意。當然你必須運行PHP 5.4。 – 2012-08-07 23:12:15
你可以嘗試使用'explode'和爆炸的斜線。在索引1處獲得數組值。 – Matthew 2012-08-07 20:24:50
@Mthethew偉大的思想家想象的一樣^ _^ – Neal 2012-08-07 20:25:33
的確如此; P – Bono 2012-08-07 20:25:44