PHP - 我的索引网站中包含页眉和页脚的问题
PHP - problem including header and footer inside my index website
我在 index.php
中包含 header.php 和 footer.php 时遇到问题
网站的结构是这样的
我有一个 index.php 页面,我还有 4 个文件夹,它们是(关于我们)、(支持)、(资产)、(包括)它们在这些文件夹中有页面。在(包含)文件夹中,我有 header.php 和 footer.php。在我的(资产)文件夹中,我有 2 个文件夹,它们是 (css)、(js)。在我的 (css) 文件夹中,我有我的 style.css 文件,在 (js) 文件夹中,我有我的 custom.js 文件。
在我的(包含)文件夹中,header.php 文件包含这样的 style.css。 .此外,在我的(包含)文件夹中,footer.php 文件包含这样的 custom.js。
此外,在我的(关于我们)文件夹中,我有关于-us.php 页面。当我使用 <?php include "../includes/header.php"; ?>
和 <?php include "../includes/footer.php"; ?>
时,一切正常。
我的问题是这样的。当我尝试在我的 index.php 页面中包含 header.php 或 footer.php 时,它们不起作用。我曾尝试将它们包含在 <?php include “/includes/header.php"; ?>
和 <?php include "includes/footer.php"; ?>
中,但它们不起作用。我尝试了不同的方法,但没有任何效果。问题是我可以在文件夹内的子页面中包含 header.php 和 footer.php,但不在文件夹外的 index.php 中。此外,如果我必须对页眉或页脚进行任何更改,我将不得不更改两次,一次用于 index.php ,将被硬编码,一次用于 header.php 或 footer.php包含在子页面中。
我怎样才能在我的 index.php 页面中包含来自(包含)的 header.php 和 footer.php 并且还在 about-us.php 页面上工作哪个在(关于我们)文件夹中?
谢谢。
这会起作用。
include "./includes/header.php";
否则,您可以在 index.php
中包含 header.php
和 footer.php
的完整文件路径位置
当您在文件夹结构的不同层级来回切换时,引用文件很困难[不直观(选择一个词)]。您可以写一本关于相对和绝对文件路径的书。
如果可能更好,请在您的网站变得太大而无法自己创建 config.php 文件之前,为您的网站定义一个合适的基础 URL,然后将其包含在您的每个页面中,除此之外,您正在尝试引用。
例如。在您站点的根目录中,创建一个名为 config.php 的文件并使用以下内容:
<?php
define("ROOT_PATH", $_SERVER["DOCUMENT_ROOT"]);
然后在所有其他文件中,您可以首先引用 config.php 文件,这将为该文档定义 ROOT_PATH,然后调用您的其他文件。
所以在你的 header.php 文件中
<?php
include "./config.php";
include(ROOT_PATH . "/assets/css/style.css");
然后当您从 index.php 调用 header.php 时,header.php 将具有指向 CSS 文件的绝对路径以供参考。
我希望我已经解释得够清楚了。
编辑/添加:
config.php 文件是任何 PHP 项目的一个方便的补充,用于许多其他事情以及定义 URLS。您可以将数据库连接、您经常使用的静态数组等保存在其中。它们成为 "go to" 用于持续使用的东西的地方。
我在 index.php
中包含 header.php 和 footer.php 时遇到问题网站的结构是这样的
我有一个 index.php 页面,我还有 4 个文件夹,它们是(关于我们)、(支持)、(资产)、(包括)它们在这些文件夹中有页面。在(包含)文件夹中,我有 header.php 和 footer.php。在我的(资产)文件夹中,我有 2 个文件夹,它们是 (css)、(js)。在我的 (css) 文件夹中,我有我的 style.css 文件,在 (js) 文件夹中,我有我的 custom.js 文件。
在我的(包含)文件夹中,header.php 文件包含这样的 style.css。 .此外,在我的(包含)文件夹中,footer.php 文件包含这样的 custom.js。
此外,在我的(关于我们)文件夹中,我有关于-us.php 页面。当我使用 <?php include "../includes/header.php"; ?>
和 <?php include "../includes/footer.php"; ?>
时,一切正常。
我的问题是这样的。当我尝试在我的 index.php 页面中包含 header.php 或 footer.php 时,它们不起作用。我曾尝试将它们包含在 <?php include “/includes/header.php"; ?>
和 <?php include "includes/footer.php"; ?>
中,但它们不起作用。我尝试了不同的方法,但没有任何效果。问题是我可以在文件夹内的子页面中包含 header.php 和 footer.php,但不在文件夹外的 index.php 中。此外,如果我必须对页眉或页脚进行任何更改,我将不得不更改两次,一次用于 index.php ,将被硬编码,一次用于 header.php 或 footer.php包含在子页面中。
我怎样才能在我的 index.php 页面中包含来自(包含)的 header.php 和 footer.php 并且还在 about-us.php 页面上工作哪个在(关于我们)文件夹中?
谢谢。
这会起作用。
include "./includes/header.php";
否则,您可以在 index.php
header.php
和 footer.php
的完整文件路径位置
当您在文件夹结构的不同层级来回切换时,引用文件很困难[不直观(选择一个词)]。您可以写一本关于相对和绝对文件路径的书。
如果可能更好,请在您的网站变得太大而无法自己创建 config.php 文件之前,为您的网站定义一个合适的基础 URL,然后将其包含在您的每个页面中,除此之外,您正在尝试引用。
例如。在您站点的根目录中,创建一个名为 config.php 的文件并使用以下内容:
<?php
define("ROOT_PATH", $_SERVER["DOCUMENT_ROOT"]);
然后在所有其他文件中,您可以首先引用 config.php 文件,这将为该文档定义 ROOT_PATH,然后调用您的其他文件。
所以在你的 header.php 文件中
<?php
include "./config.php";
include(ROOT_PATH . "/assets/css/style.css");
然后当您从 index.php 调用 header.php 时,header.php 将具有指向 CSS 文件的绝对路径以供参考。
我希望我已经解释得够清楚了。
编辑/添加: config.php 文件是任何 PHP 项目的一个方便的补充,用于许多其他事情以及定义 URLS。您可以将数据库连接、您经常使用的静态数组等保存在其中。它们成为 "go to" 用于持续使用的东西的地方。