有PHP中的路径引用指南吗?

有PHP中的路径引用指南吗?,php,directory-structure,Php,Directory Structure,我知道如何将文件夹中的文件放在下一层的文件夹中,但我很难找到备份的方法。 我决定使用set_include_path将所有进一步的include设置为默认值,相对于路径2级,但对于如何写出它,我一点也不知道 是否有详细介绍PHP路径引用的指南?使用绝对路径引用可能更容易: set_include_path('/path/to/files'); 这样你就有了一个参考点,为你的未来包括。include是相对于调用它们的点来处理的,这在某些场景中可能会引起一些混乱 例如,给定一个示例文件夹结构(/h

我知道如何将文件夹中的文件放在下一层的文件夹中,但我很难找到备份的方法。 我决定使用set_include_path将所有进一步的include设置为默认值,相对于路径2级,但对于如何写出它,我一点也不知道


是否有详细介绍PHP路径引用的指南?

使用绝对路径引用可能更容易:

set_include_path('/path/to/files');
这样你就有了一个参考点,为你的未来包括。include是相对于调用它们的点来处理的,这在某些场景中可能会引起一些混乱

例如,给定一个示例文件夹结构(
/home/files
):

如果调用index.php,它将尝试包含以下文件:

/home/files/test/test.php // expected
/home/test2/test2.php // maybe not expected
这可能不是你所期望的。调用test.php将按预期调用
/home/files/test2/test.php

结论是,include将相对于原始调用点。为了澄清这一点,如果它也是相对的,那么这会影响到
set\u include\u path()。考虑以下内容(使用相同的目录结构):


使用绝对路径引用可能更容易:

set_include_path('/path/to/files');
这样你就有了一个参考点,为你的未来包括。include是相对于调用它们的点来处理的,这在某些场景中可能会引起一些混乱

例如,给定一个示例文件夹结构(
/home/files
):

如果调用index.php,它将尝试包含以下文件:

/home/files/test/test.php // expected
/home/test2/test2.php // maybe not expected
这可能不是你所期望的。调用test.php将按预期调用
/home/files/test2/test.php

结论是,include将相对于原始调用点。为了澄清这一点,如果它也是相对的,那么这会影响到
set\u include\u path()。考虑以下内容(使用相同的目录结构):


我倾向于使用获取当前路径,然后将其作为计算所有未来路径名的基础

比如说,

$base = dirname( __FILE__ ); # Path to directory containing this file
include( "{$base}/includes/Common.php" ); # Kick off some magic
我倾向于使用获取当前路径,然后以此为基础计算所有未来的路径名

比如说,

$base = dirname( __FILE__ ); # Path to directory containing this file
include( "{$base}/includes/Common.php" ); # Kick off some magic

到底从哪里开始?它是相对于apache的还是在php.ini中设置的,还是php目录本身的?默认情况下,include相对于set_include_path(“../”);-如果我想将include路径设置为2个目录,我将如何放置它?对不起,没关系,我已经找到了每个目录。代表向上的一步这到底是从哪里开始的?它是相对于apache的还是在php.ini中设置的,还是php目录本身的?默认情况下,include相对于set_include_path(“../”);-如果我想将include路径设置为2个目录,我将如何放置它?对不起,没关系,我已经找到了每个目录。表示你得到我的+1,但请避免“{$var}”。为什么不
$base.”/includes/Common.php“
?我更喜欢设置include路径,而不是在每个include/require语句中使用变量。无眼睑:我觉得它更容易阅读。两者之间没有区别。您得到了我的+1,但请避免“{$var}”。为什么不
$base.”/includes/Common.php“
?我更喜欢设置include路径,而不是在每个include/require语句中使用变量。无眼睑:我觉得它更容易阅读。两者之间没有区别。