【问题标题】:How to stitch multiple parts of a PHP page together?如何将 PHP 页面的多个部分拼接在一起?
【发布时间】:2014-10-29 18:22:55
【问题描述】:

好的,所以我在这里尝试做的是尽量减少数据重复并让我自己不必更改每一页。我创建了两个文件用作所有其他页面上的模板。这些文件将是页面顶部和底部(页眉和页脚),中间的位将是实际页面。 header 将包含 head 元素,而 body 标记中的某些内容(例如导航栏和页脚)将具有实际的页脚并结束 body 标记和 html。

所以到目前为止我尝试做的是这样的:

<?php Echo file_get_contents('/templates/header.txt'); ?>
<p>Blah blah blah blah blah blah blah blah blah blah blah
blah blah blah blah blah blah blah blah blah blah blah</p>
<?php Echo file_get_contents('templates/footer.txt'); ?>

如果页眉和页脚在 html 中,这可以正常工作,但如果它们包含 php 代码,它将无法工作,因为您无法回显 php 代码。所以我的问题是我怎么能做到这一点,但它可以使用 php 代码。

编辑:我也尝试过包含,但这也不起作用。

我有一个工作 php 页面,顶部和底部有很多 php goin。我想将顶部和底部分成两个可以切换的文件:

header.php

footer.php

我所有的测试页面都是这个(test.php):

<?php include('/templates/header.php'); ?>
        <p style="color:lime;">Logged in as <?php echo htmlentities($_SESSION['username']); ?> (<a href="includes/logout.php">Log out</a>)</p>
        <video width="853" height="480" controls>
            <source src="/videos/BIRDS OF PREY 4K (ULTRA HD).mp4" type="video/mp4">
            Your browser does not support the video tag.
        </video>
        <p>4K test video, watch in full screen! :)</p>
<?php include(/templates/footer.php); ?>

它只是停止工作,但如果我把它重新组合起来,它就可以工作。

【问题讨论】:

  • 你是什么意思包括没有工作?试试下面的 Scotts 结构。
  • 在这里再投一票。如果您编辑您的问题以显示您如何尝试使用包含来执行此操作,那么有人可能会帮助您使其正常工作。

标签: php html


【解决方案1】:
<?php include('/templates/header.php'); ?>

即使文件只包含 HTML 或文本,它也可以具有 php 扩展名。

【讨论】:

  • 但这不起作用。那些页眉和页脚,它们是文件的一部分。页眉包含正文标签打开,页脚包含正文关闭标签
  • 我不明白你在说什么。你有一个头文件和一个页脚文件?使用 include 函数读取并运行它们。
  • 它有效。每天大约执行十亿次。
  • 请检查我的代码,它根本不起作用。但是放在一个文件中时它确实如此,为什么?
  • 您可能需要更新头文件include 行中的路径。由于您的标头位于 /templates/ 文件夹中,因此相对路径可能不同。
猜你喜欢
  • 2012-03-20
  • 1970-01-01
  • 1970-01-01
  • 2019-09-03
  • 1970-01-01
  • 1970-01-01
  • 2011-05-02
  • 2012-01-23
  • 1970-01-01
相关资源
最近更新 更多