是否可以将PHP需求链接在一起?

是否可以将PHP需求链接在一起?,php,include,require,Php,Include,Require,我想做的是为我的网站建立一个开发子域 结构基本上是这样的: /vitals.php <-- Contains the actual info (passwords, db info, etc...) /public_html/vitals.php <-- contains only require("../vitals.php") /public_html/index.php /public_html/dev/index.php /vitals.php您的请求的相对路径有问题。只要

我想做的是为我的网站建立一个开发子域

结构基本上是这样的:

/vitals.php <-- Contains the actual info (passwords, db info, etc...)
/public_html/vitals.php <-- contains only require("../vitals.php")
/public_html/index.php
/public_html/dev/index.php

/vitals.php您的请求的相对路径有问题。只要使用绝对路径,require就可以工作,不管它是否在dev子目录中

i、 e


active directory不会因为包含文件而更改。就我个人而言,我喜欢以chdir($\u SERVER['DOCUMENT\u ROOT'])
开始我的代码,因为这将允许我以相同的方式包含文件,而不管我在哪个文件夹中。

需要
包含
,朋友们,先查看当前文件,然后查看脚本文件的目录。工作目录最初将是访问页面的目录。它在包含的文件中不会有什么不同,因此它只会尝试再次包含同一个文件,而不会设法建立树

更好的方法可能是直接跳到根:

require $_SERVER['DOCUMENT_ROOT'] . '/vitals.php';

您是否尝试过要求(“../../vitals.php”)?您的问题有点模糊,难以理解,请澄清。我建议您在根文件中定义一个表示应用程序根路径的常量(例如:
define('application\u path',\uu DIR\uu
),然后,在所有的include或required中使用它,以给出绝对路径。因为,使用您的方法,您正在使用相对路径,您可能会感到困惑。请看一看:“它不起作用”不是一种解释,包括相对于
\uu DIR\uuuu
$\u SERVER['DOCUMENT\u ROOT']
,或其他一些
定义()
'd目录。抱歉,我知道它不是很清楚,但我不知道如何重新命名。我只是想在另一个文件夹中创建一个网站的精确副本。我不想更改开发子域上的require语句。当我说它不工作时,开发子域只在pub中包含
vitals.php
lic_html文件夹(仅包含另一条require语句)而不是文档根目录中所需的
vitals.php
。我可以这样做,但我正在努力避免为将作为子域存在于dev文件夹中的页面重写require语句。如果它们位于子域中,只需将整个文件夹放在为该虚拟主机定义的自己的目录结构中,而不是放在nestin中g在另一个虚拟主机的目录中,您只是给自己造成了不必要的问题。
require $_SERVER['DOCUMENT_ROOT'] . '/vitals.php';