$ _SERVER ['REQUEST_URI']指导

时间:2012-10-10 14:12:17

标签: php uri

我有一个奇怪的编码情况,我需要让URI成为正在查看的页面的标题。我想不出另一种方法,但现在我需要格式化URI,无法弄清楚如何实现它。它是一个WordPress站点,因此URI非常干净。我想要做的是将第一个单词的字母大写,然后用空格,破折号或管道分隔符来分隔标题。

所以这显然给了我URI:

<title><?php echo ($_SERVER['REQUEST_URI']) ?></title>

这给了我/ test-catalog / diagnosis / flu这样的东西。我想要展示的是测试目录 - 诊断 - 流感

谢谢。

5 个答案:

答案 0 :(得分:2)

我想这会起作用:

echo ucwords(str_replace(Array("-","/"),Array(" "," - "),$_SERVER['REQUEST_URI']);

答案 1 :(得分:1)

使用str_replace和ucwords

实施例

echo ucwords(str_replace('/', ' - ', str_replace('-', ' ', $_SERVER['REQUEST_URI'])));

答案 2 :(得分:1)

要做的几件事:

$url = str_replace("-"," ",$url);  // convert the - to spaces (do this first)
$url = str_replace("/"," - ",$url);  // convert the / to hyphens with spaces either side

$title = ucfirst($url);            // capitalize the first letter

如果您想要将每个字母大写,请执行以下操作:

$title = ucwords($url);            // capitalize first letter of each word

你可能会有一些白人开始和结束,所以这样做:

$title= trim($title)

答案 3 :(得分:1)

// remove the first slash '/'
$uri = substr($_SERVER['REQUEST_URI'], 1);
// ucwords to uppercase any word
// str_replace to replace "-" with " " and "/" with " - "
echo ucwords(str_replace(array("-","/"),array(" "," - "),$uri));

codepad

答案 4 :(得分:0)

作为之前答案的简历:

echo ucwords(str_replace(array("-","/"),array(" "," - "),substr($_SERVER['REQUEST_URI'], 1)));