我的路径看起来像是:
/home/duke/aa/servers/**servername**/var/...morefiles...
使用php,我想从路径中提取“servername”
不幸的是我不是那么精通php但是我想出了一些使用strstr()
的东西,但我只使用PHP版本5.2,其中一个参数函数需要5.3
什么代码会返回“servername”?
答案 0 :(得分:8)
您可以使用explode('/', $path)
将其分解为各个目录。在那之后,由你来决定哪个数组元素是服务器名称(使用你的样本路径,它是#4):
$parts = explode('/', $path);
echo $parts[4]; // **servername**
答案 1 :(得分:6)
function getServerName($data) {
preg_match('#/servers/(.+)/var/#', $data, $result);
if (isset($result[1]) {
return $result[1];
}
}
$data = '/home/duke/aa/servers/**servername**/var/...morefiles...';
echo getServerName($data);
答案 2 :(得分:0)
$str = '/home/duke/aa/servers/**servername**/var/...morefiles...';
echo preg_replace('$(.+)/servers/(.+)/var/(.+)$', '\2', $str);