的中间部分我有这样需要获取路径
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