1
$titleadd = substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
$titleadd = str_replace('.php', '', $titleadd);
$titleadd = str_replace('-', ' ', $titleadd);

我正在获取 url,删除http://www.domain.com/然后替换 .php 和 url 中的任何连字符以回显页面名称。

所以www.google.com/my-page.php将作为我的页面输出

有没有更短的方法来做到这一点?

4

2 回答 2

3

您的用例的较短等效项是

$titleadd = strtr(basename($_SERVER["SCRIPT_NAME"], ".php"), "-", " ");

当然,这不是工业级解析,但它应该提供与原始代码一样好的结果。

一个更强大的尝试将涉及parse_url,但它最终不会比你所拥有的更短。另一方面:也许代码长度在这里不是正确的度量?毕竟,你可以隐藏 200 行代码foo()而没有人知道。

于 2012-06-15T11:37:19.737 回答
0
echo str_replace('-', ' ', basename('www.google.com/my-page.php', '.php'));
于 2012-06-15T11:36:48.160 回答