PHP:从字符串中提取名称

时间:2011-07-12 20:07:41

标签: php string strstr

我的路径看起来像是:

/home/duke/aa/servers/**servername**/var/...morefiles...

使用php,我想从路径中提取“servername”

不幸的是我不是那么精通php但是我想出了一些使用strstr()的东西,但我只使用PHP版本5.2,其中一个参数函数需要5.3

什么代码会返回“servername”?

3 个答案:

答案 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);