php包含html文件?

时间:2015-03-12 02:13:39

标签: php html

我只需要包含一个html文件(我的所有页面都有导航栏)。

我试过了:<?php htmlentities(file_get_contents("include/navigation.html")); ?>

但根本没有任何表现。

我已经检查过这样的其他问题,上面的代码总是答案。那么为什么它不适合我?

如果需要,这是我的导航文件:

<!-- Navigation -->
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
    <div class="container">
        <!-- Brand and toggle get grouped for better mobile display -->
        <div class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="index.html">[ ] Advanced Web Development</a>
        </div>
        <!-- Collect the nav links, forms, and other content for toggling -->
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
            <ul class="nav navbar-nav navbar-right">
                <li class="active">
                    <a href="index.html">Home</a>
                </li>
                <li>
                    <a href="#about">About</a>
                </li>
                <li>
                    <a href="#resume">Résume</a>
                </li>
                <li>
                    <a href="#blog">Blog</a>
                </li>
                <li>
                    <a href="#projects">Projects</a>
                </li>
                <li>
                    <a href="#blog">Contact</a>
                </li>
                <!--
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Portfolio <b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        <li>
                            <a href="portfolio-1-col.html">1 Column Portfolio</a>
                        </li>
                        <li>
                            <a href="portfolio-2-col.html">2 Column Portfolio</a>
                        </li>
                        <li>
                            <a href="portfolio-3-col.html">3 Column Portfolio</a>
                        </li>
                        <li>
                            <a href="portfolio-4-col.html">4 Column Portfolio</a>
                        </li>
                        <li>
                            <a href="portfolio-item.html">Single Portfolio Item</a>
                        </li>
                    </ul>
                </li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Blog <b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        <li>
                            <a href="blog-home-1.html">Blog Home 1</a>
                        </li>
                        <li>
                            <a href="blog-home-2.html">Blog Home 2</a>
                        </li>
                        <li>
                            <a href="blog-post.html">Blog Post</a>
                        </li>
                    </ul>
                </li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Other Pages <b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        <li>
                            <a href="full-width.html">Full Width Page</a>
                        </li>
                        <li>
                            <a href="sidebar.html">Sidebar Page</a>
                        </li>
                        <li>
                            <a href="faq.html">FAQ</a>
                        </li>
                        <li>
                            <a href="404.html">404</a>
                        </li>
                        <li>
                            <a href="pricing.html">Pricing Table</a>
                        </li>
                    </ul>
                </li>
            -->
            </ul>
        </div>
        <!-- /.navbar-collapse -->
    </div>
    <!-- /.container -->
</nav>

4 个答案:

答案 0 :(得分:1)

虽然在普通代码上使用echo就足够了,如果你希望人们能够访问HTML,你可以将它包含在一个php文件中,除了<?php ?> tag.内的任何地方

答案 1 :(得分:1)

在上面的示例中,php正在从文件中创建一个字符串,但不对其执行任何操作。为了使您的代码有效,您需要添加一个echo:

<?php echo htmlentities(file_get_contents("include/navigation.html"));

这是因为函数通常有三种方式可以影响事物:

  1. 返回一个值(什么是htmlentities)
  2. 修改(a)传递给它们的值(看看passing by reference
  3. 直接回应某些内容或与output buffer
  4. 进行回应

    由于htmlentities返回一个值,因此不会向输出发送任何内容。您必须将其保存到变量以便稍后输出,或者现在回显/打印到输出。

    或者,您可以按照@David的建议包含它。

答案 2 :(得分:0)

htmlentities()不会输出到浏览器。您仍然需要echo()或以其他方式输出。

<?php echo htmlentities(file_get_contents("include/navigation.html")); ?>

或者按照评论中的建议使用include()嵌入整个文件。 PHP将尝试处理该文件,因此如果它包含任何PHP代码,请确保它没有错误。

<?php include( "include/navigation.html" ); ?>

答案 3 :(得分:0)

尝试:

<?php
    $file = htmlentities(file_get_contents("include/navigation.html"));
    echo $file;
?>