包含标题后如何更改页面标题.php?

2022-08-30 23:51:36

页码.php:

<?php
include("header.php");
$title = "TITLE";
?>

页眉.php:

<title><?php echo $title; ?></title>

我希望在包含头文件设置我的标题。可以做到这一点吗?


答案 1

扩展Dainis Abols的答案,以及您关于输出处理的问题,

请考虑以下事项:

您的标题.php标题标签设置为 ;“%”很重要,因为几乎没有人键入%TITLE%,因此您可以稍后将其用于str_replace()。<title>%TITLE%</title>

然后,您可以像这样使用输出缓冲区

<?php
    ob_start();
    include("header.php");
    $buffer=ob_get_contents();
    ob_end_clean();

    $buffer=str_replace("%TITLE%","NEW TITLE",$buffer);
    echo $buffer;
?>

这应该可以做到。

编辑

我相信盖伊的想法效果更好,因为如果你需要它,它会给你一个默认值,IE:

  • 标题现在是<title>Backup Title</title>
  • 代码现在是:
<?php
    ob_start();
    include("header.php");
    $buffer=ob_get_contents();
    ob_end_clean();

    $title = "page title";
    $buffer = preg_replace('/(<title>)(.*?)(<\/title>)/i', '$1' . $title . '$3', $buffer);

    echo $buffer;
?>

答案 2

1. 只需在需要函数之前添加$title变量

<?php

$title = "Your title goes here";
require("header.php");

?>

将以下代码添加到标头中.php

<title><?php echo $title; ?></title>

推荐