我在远程服务器上包含文件时遇到问题(但在我的本地Windows PHP + Apache配置上,它工作正常......)。
当我尝试从包含的文件中包含文件时出现问题:
index.php的内容:
<?php
include("Dir1/File1.php");
?>
Dir1 / File1.php的内容:
<?php
include("File2.php");
include("File3.php");
echo("<p>File1 include done.</p>");
?>
Dir1 / File2.php的内容
<?php
echo("<p>File2 include done.</p>");
?>
Dir1 / File3.php的内容
<?php
echo("<p>File3 include done.</p>");
?>
File2.php和File3.php没有得到评估,但当我将File2.php更改为File99.php(一些不存在的文件)时,我得到标准警告,该文件不存在。
但是当我更改Dir1 / File1.php的内容以包含这样的文件时:
<?php
include("Dir1/File2.php");
include("Dir1/File3.php");
echo("<p>File1 include done.</p>");
?>
然后文件被评估......
答案 0 :(得分:1)
听起来你没有“。”您的包含路径中的(当前文件夹)。您应该修改您的php.ini文件以添加它。您可以通过
找到实时和测试服务器上的值<?php
phpinfo();
?>
答案 1 :(得分:0)
尝试使用完整路径包含:
include(dirname(__FILE__) . "/Dir1/File3.php");
答案 2 :(得分:0)
每次都适合我:
<?php require_once($_SERVER['DOCUMENT_ROOT'] . '/path/to/File3.php'); ?>