目前我有这个文件夹结构
-Member
-Templates
and other folders
当我在Member / index.php中使用时,页面上没有显示任何内容。
include("templates/header.php"); ?>
当我尝试其他缩写时,如
<?php $path = $_SERVER['DOCUMENT_ROOT']; $path .= "/templates/header.php";include_once($path);?>
或
include 'templates/header.php';
也没有任何事情发生。
在这种情况下你如何使用php include? p>
答案 0 :(得分:0)
如果您的文件夹名称是大写的,请尝试:
include_once $_SERVER['DOCUMENT_ROOT'].'/Templates/header.php';
您也可以在没有/
的情况下尝试:
include_once $_SERVER['DOCUMENT_ROOT'].'Templates/header.php';
如果您的文件夹没有大写字母,请将其保留为:templates
当然,您可以将$_SERVER['DOCUMENT_ROOT']
变为变量,这样您就不必一直重新声明它
注意: 这就是@Mahan所说的
答案 1 :(得分:0)
与您的代码一样,您指的是一个不存在的文件。
-Member
-Templates
and other folders
在Member / index.php中,当你包含这样的文件时;
include("templates/header.php");
您实际上是指Member
文件夹中的文件。相反,您应该使用$ _SERVER变量,或者您应该参考include("/Templates/header.php");
但最佳做法是使用$ _SERVER变量;
您在include语句中以简单的方式给出了目录名称。另外,请注意,不要将目录路径直接附加到$path = $_SERVER['DOCUMENT_ROOT'];
变量。而是在include语句中键入路径。
喜欢:
$root = $_SERVER['DOCUMENT_ROOT'];
include $root.'/Templates/header.php';
这样您就不需要在任何地方重新声明$ _SERVER全球。
另外,练习一些调试!如果你真的想学习,就不要为了所有事情而努力。找出为什么&#34;什么都没有加载&#34;。
打印$ path并查看路径是否有效。并检查错误日志他们说什么。如果你这样做了,你肯定会自己解决这个问题!
希望这是有道理的: - )