php包含文件必须重新声明html标签吗?

时间:2014-01-27 16:31:46

标签: php html include

这里的简单问题..

我从不同的教程(关于使用包含)中做出的观察是人们经常在包含的文件中重新标记标签。

这是一个例子。

的index.php

<?php
include 'header.html.php';
include 'content.html.php';
include 'footer.html.php';

header.html.php

<html>
<head> All head stuff <head>
<body>

content.html.php

<html>
<head></header
<body>
//content
</body>
</html>

footer.html.php

</body>
</html>

是否有理由在include文件中包含整个html格式?需要吗? 感谢

3 个答案:

答案 0 :(得分:3)

您的content.html.php文件应该包含页眉和页脚文件中包含的冗余HTML代码。实际上,这就违背了拥有它们的目的,因为它们意味着包含公共页眉和页脚代码,因此您明确地不必放入内容页面的主体。

答案 1 :(得分:1)

我不知道你正在阅读什么教程,但它们是错误的!查看浏览器中输出的源。多个HTML标记是错误的。

答案 2 :(得分:0)

了解DRY。如果您理解,那就得到答案。

我建议你这样做:

<!doctype html>
<html lang="en">
<head>
  <?php include'head.html.php') ?>
</head>
<body>
  <?php include'header_navigation.html.php') ?>

  <?php include'content.html.php') ?>

  <?php include 'footer.html.php' ?>
</body>
</html>

<强> head.html.php

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Your website title</title>

<强> header_navigation.html.php

<nav>
  <ul>
    <li><a href="#">Home</a></li>
    <li><a href="#">About us</a></li>
    <li><a href="#">Contact</a></li>
  </ul>
</nav>

<强> content.html.php

<section>
  <article>
    <h1>Your content title</h1>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nihil, quos, saepe a similique totam excepturi enim natus voluptatum rerum eum veritatis aspernatur minus ipsum accusamus voluptate minima quis suscipit officia!</p>
  </article>
</section>

<强> footer.html.php

<!-- your scripts -->
<script type="text/javascript">
  $(document).ready(function() {

  });
</script>