如何从文件夹中包含一个PHP文件

4
我正在尝试使用php中的include语句,通过包含一个php文件作为页脚。但是,我收到了错误消息,指出“include(includes / footer.php):无法打开流:文件或目录不存在” 或者 “警告:include():无法打开'includes / footer.php'进行包含(include_path ='。; C:\ php \ pear')”。 我不知道是否遗漏了什么,或者当从不同文件夹检索文件时,我需要做其他事情吗?这是代码:

include.php

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <link rel="stylesheet" href="../css/style.css"/>
  <title>include</title>
  <style type="text/css">
  .foot-item{width:33.33% min-height:120px; border-right:solid 1px white; }
  .foot-item:nth-last-child{ border-right:none;}
  .foot-item h3 a{color:#0099ff; text-decoration:none;}
  </style>
</head>
<body>
  <div class="contain">
    <article>
      <header><h1>include</h1></header>
      <section>
        <blockquote>The include statement includes and evaluates the specified file. </blockquote>
          <p>Default</p>
            <div id="result">Result</div>
            <?php

            ?>
          </section>

        </article>
      <?php  include('includes/footer.php');?>
      </div>
    </body>
    </html>

includes/footer.php

<footer>
  <div class="foot-item">
    <h3><a href="#">Recent Posts</a></h3>
    <ul><li>link<li><li>link<li><li>link<li></ul>
    </div>
    <div class="foot-item">
      <h3><a href="#">Free Newsletters</a></h3>
      <ul><li>link<li><li>link<li><li>link<li></ul>
      </div>
      <div class="foot-item">
        <h3><a href="#">Social Links</a></h3>
        <ul><li>link<li><li>link<li><li>link<li></ul>
        </div>
      </footer>

你的文件存储在类似这样的路径下:path/to/webroot/include.phppath/to/webroot/includes/footer.php - user5051310
2
尝试使用 include(__DIR__ . '/includes/footer.php'); 包含文件。 - rjdown
你这里的代码是正确的,所以很可能你没有发布所有的代码。在运行时期间是否有什么东西改变了你的当前工作目录(例如php中的chdir)?无论如何,include(__DIR__ . '/includes/footer.php'); 应该可以解决问题。 - jpschroeder
1
那些%20是从哪里来的?你的includes文件夹的名字里有空格吗? - user5051310
1
我建议从文件夹名称中删除空格,而不是将空格添加到您的代码中。这样可以避免每次都需要添加空格的麻烦。 - user5051310
显示剩余6条评论
1个回答

1
如果您的文件结构如下所示:

include.php
includes/
    footer.php

你可以使用:

<?php include('./includes/footer.php'); ?>

如果文件结构不同,需要编写到目标文件的相对或绝对路径。例如,如果文件结构如下:
code/
    include.php
includes/
    footer.php

you can write:

<?php include('../includes/footer.php'); ?>

P.S. '../' 表示向上一级文件夹,'./' 表示当前文件夹,'../../' 表示向上两级文件夹。
祝好运!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接