Php 将页眉和页脚作为模板包含是否不好?

Php 将页眉和页脚作为模板包含是否不好?,php,html,css,Php,Html,Css,我想知道通过另一个页面包含像etc这样的标签是否正确 我的意思是: <?php include_once("header.php")?> The content for each individual page <?php include_once("footer.php")?> 每个页面的内容 Header.php包含: <!DOCTYPE html> <head> <title>My Website</title>

我想知道通过另一个页面包含像etc这样的标签是否正确

我的意思是:

<?php include_once("header.php")?>
The content for each individual page
<?php include_once("footer.php")?>

每个页面的内容
Header.php包含:

<!DOCTYPE html>
<head>
<title>My Website</title>
</head>
<body>
</body>
</html>

我的网站
Footer.php包含:

<!DOCTYPE html>
<head>
<title>My Website</title>
</head>
<body>
</body>
</html>

我这样使用它是因为当我有很多页面时,只需更改一页或两页就容易多了。那样我就有空余时间了

但问题是,在我的网站上使用“模板”样式是否不好


(我看到了一些类似的问题,比如这个问题,但它们并没有真正回答我的问题,这就是为什么我开始了一个新的主题-如果它错了,很抱歉)

我想这没问题-这肯定比在多个页面上复制相同的内容要好。是编程的核心租户,这种方法在这方面很有帮助。与易于维护的优势相比,PHP includes对性能的影响是绝对最小的,不值得担心


不过,你或许还能走得更远。你真的需要在每一页上重复包含的内容吗?如果所有的页面都有相同的页眉和页脚,那么你可以只做一个页面,中间有一个动态内容的区域(这是ASP.NET所采用的方法)。

<不,这太好了。实际上,你会发现有越来越多的东西你想移动到包含的文件中,例如,你网站的边栏可能在它自己的文件中。这正是PHP的用武之地,使您的网站更易于维护。

任何PHP都比HTML慢。例如,人们在wordpress网站上使用缓存插件,因此只需要请求HTML,php服务器就不必那么费力,页面速度也会更快。但是随着wordpress的普及,使用PHP的好处显然超过了这一点

所有php调用都是一次完成的,因此多次调用php与多次调用css文件或JavaScript不同


随着网站的发展,你会很乐意做出一个影响所有页面的改变,而不是改变每个页面。一个简单的例子是标题中的季节性问候语。简单的广告和带走你的模板。没有,就不是这样。这是在更明显的链接改变之前。

这是一个好的方向,只是不要重复你自己。无论如何,要从这个模板化思想中获得更多的健壮性,您可以尝试查看以下库:

小枝:

Smarty:

我见过这种模式,我忘了它叫什么了。另一种模式是有一个带有页眉和页脚的布局文件,并将内容注入其中的占位符。我认为这是一种很好的做法。更好的代码可读性意味着更少的bug。此外,如果您需要更改页眉或页脚中的某些内容,那么如果您使用includesI,您就不会错过任何一个页面。我已经做了12年以上的web开发人员,这就是我做所有动态网站的方式。因此,这不会减慢网站或其他事情的速度。例如,任何框架或php应用程序都使用相同的想法(包括文件),因此,对于您的案例来说,这是一种正确的方法,并继续使用这种方式以防止代码重复,以便于维护。谢谢,我不知道存在这样的情况:感谢您的回答和解释;)谢谢,有时间我会试试smarty;)