是否有可能将PHP链接在一起?

时间:2013-03-14 00:19:35

标签: 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

public_html中的索引文件有require("../vitals.php")。我希望能够在dev/index.php文件中使用相同的行,方法是在公共html中添加额外的vitals.php,而后者又包含public_html之外的vital.php

问题是......它不起作用。想法?

3 个答案:

答案 0 :(得分:1)

活动目录不会因为您包含文件而更改。就个人而言,我喜欢用chdir($_SERVER['DOCUMENT_ROOT'])开始我的代码,因为这样我就可以无论我在哪个文件夹中都包含相同的文件。

答案 1 :(得分:0)

您对require的相对路径有问题。只需使用绝对路径,无论是否在您的dev子目录中,require都将起作用。

require('/path/to/vitals.php');

答案 2 :(得分:0)

requireinclude和朋友,首先查看当前working directory,然后查看脚本文件的目录。工作目录最初将是被访问页面的目录。它在包含的文件中没有什么不同,因此它只会尝试再次包含相同的文件,而不是设法启动树。

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

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