0

我正在运行 xampp,我有一个简单的站点结构:

--> C:\xampp\htdocs\mywebsite\pub\index.php

--> C:\xampp\htdocs\mywebsite\other.php

在 index.php 我有

<?php require("../other.php"); ?>

当我导航到 index.php 时,我看到以下错误:

警告:需要(../other.php):无法打开流:第 2 行的 C:\xampp\htdocs\mywebsite\pub\index.php 中没有这样的文件或目录

致命错误:require():在 C:\xampp\htdocs\mywebsite\pub\index.php 中打开所需的 '../other.php' (include_path='.;C:\xampp\php\PEAR') 失败2号线

“../”不会带我回到上一个目录吗?如果我在线运行代码而不是本地运行代码,它工作正常

** 我更感兴趣的是为什么它不能在本地工作而不是解决方案,因为问题与一个项目有关,我必须手动更改很多路径才能让它在本地工作

4

2 回答 2

0

尝试 :

<?php require($_SERVER['DOCUMENT_ROOT']."/other.php"); ?>
于 2013-07-02T21:55:35.163 回答
0

这肯定会奏效。

<?php require(  realpath('/../'. basename(__FILE__)) . DIRECTORY_SEPARATOR  "other.php"); ?>

或者

<?php require( realpath('/../'. __DIR__) . DIRECTORY_SEPARATOR  "other.php"); ?>

这里 basename(__FILE__)并且__DIR__属于当前目录。

于 2015-12-23T12:35:18.493 回答