![]() |
1
9
您可以使用以下命令获取与当前文件关联的目录
所以你可以这样做:
|
![]() |
2
1
使用您所需的文件路径定义一个常量,无论您通常将配置设置放在哪里。保持简单和可定制。 |
![]() |
3
1
首先,请注意,“相对路径”将来自当前运行的第一个php脚本的路径所在的位置(无论哪个文件可能正在执行包含操作)。无法指定相对路径听起来很奇怪。。。 |
![]() |
4
1
如果我理解以下文档
将从我的PEAR模块中回显STATUS文档,因为/usr/share/PEAR位于我的include_path中。当我们讨论这个问题时,我不相信include()或require()也能在相对路径上工作,除非。'是include_path的一部分。我去查查。 更新:好的,我查过了。事实证明,无论include_path怎么说,include()也将始终考虑当前目录。 |
![]() |
5
0
在网站世界中,必须了解事物的发展路径是很常见的。您可以将路径的一部分(如开头)存储在配置变量中,例如$config['include_dir'];指定文件的路径就像说include一样简单($_SERVER['DOCUMENT_ROOT'].'/include/myinclude.inc.php'); 我不知道你怎么知道要包括什么文件。 |
![]() |
6
0
打开文件需要绝对路径。您可以使用realpath()将相对url路径转换为绝对路径。 |
![]() |
7
0
查看$_SERVER属性。 http://us2.php.net/manual/en/reserved.variables.server.php 你想要的
|
![]() |
8
0
但是使用绝对路径更好,所以PHP不需要猜测哪个文件是指哪个文件。 |
![]() |
9
0
我不知道您是否可以控制要加载的文件的内容,但如果可以,您可以尝试使用smarty模板引擎( http://www.smarty.net/ ) 您需要在尝试加载的文件中添加“{include file=“relative/file/path.ext”}”,但smarty至少会为您处理所有相对路径和混淆。 PS:包含标签的文档在这里: http://www.smarty.net/manual/en/language.function.include.php |
![]() |
10
0
为了回答你的问题,在我看来,你需要编写自己的包含等效代码,以从任意数量的可能路径返回文件内容。在数组中配置一系列路径,并让你的函数循环遍历它,使用file_exists(),如果找到文件,则加载文件内容。 文件系统功能: http://us2.php.net/manual/en/ref.filesystem.php#73954 另请注意,文件系统路径分隔符有php常量,例如: DIRECTORY_SEPERATOR,但是对于可移植文件路径,您并不真正需要它,因为正斜杠“/”在Windows上工作。 Ps:Symfony中经常使用的获取绝对路径的技巧是:
|