如何使用PHP基于页面名称创建动态HTML <title>标记?

时间:2016-11-28 22:43:04

标签: php html html5 url

&lt; p&gt;如何基于.php / .html文件名动态更改HTML标题标记?现在我正在使用一个开关盒试图完成这个,但我不知道如何获取页面名称以便比较每种情况。这是我的PHP代码:&lt; / p&gt; &lt; pre&gt;&lt; code&gt; $ prefix ='MySiteTitle | “; switch($ _GET ['PHP_SELF']){ 案例'www.mysite.php / home': $ pageTitle ='主页'; } &LT; /代码&GT;&LT; /预&GT; &lt; p&gt;在我的标题标签中,它是:&lt; / p&gt; &lt; pre&gt;&lt; code&gt;&lt; title&gt;&lt;?php echo $ prefix。 $ pageTitle?&gt;&lt; / title&gt; &LT; /代码&GT;&LT; /预&GT; &lt; p&gt;到目前为止,这还没有奏效,因为$ pageTitle变量为空&lt; / p&gt;

2 个答案:

答案 0 :(得分:1)

你可以这样做:

$pageTitle = rtrim(basename(__FILE__), '.php');

但这不是一个好主意,如果你肯定不会在每个文件上都有一个内容。

您应该自己完成作业:$pageTitle = 'Article name';

修改

带标题:

在头文件中,您将拥有以下内容: <title>My site | <?= $pageTitle ?></title>

在用户访问的页面上:

$pageTitle = 'My article';

require_once 'header.php';

答案 1 :(得分:1)

你可能意味着$ _SERVER [&#39; PHP_SELF&#39;]而不是$ _GET [&#39; PHP_SELF&#39;](尽管你可以为你的参数命名)。检查输出

echo $_SERVER['PHP_SELF'] 

并确保回声匹配&#39; www.mysite.php / home&#39;

$prefix = 'MySiteTitle | ';

switch ($_GET['PHP_SELF']){
    case 'www.mysite.php/home':
        $pageTitle = 'Home';
     default:
         $pageTitle ='You are here';
}