[英]Defining PHP Path to config.php
我有一个在XAMPP下运行的现有PHP Web项目,并且在部署之前对其进行了整理,以使其更安全,更易于维护。 这些步骤之一是将一些关键变量移动到类似于PHP网站模板的config.php文件中
我将config.php文件放置在资源文件夹中,如下所示
我现在尝试包括以下配置文件
include 'resources/config.php';
echo ("Template path is ".TEMPLATES_PATH );
结果是找不到TEMPLATES_PATH定义。 如果现在将config.php文件移动到根目录(htdocs),则该目录与index.php文件处于同一级别,并将include更改为
include 'config.php';
echo ("Template path is ".TEMPLATES_PATH );
TEMPLATES_PATH已定义,站点可以正常工作。
我几乎尝试了绝对路径的几乎所有变体,但均无济于事,因此,这可能表明对我尚未掌握的PHP路径结构的一个或另一个方面缺乏根本的了解,因此,对此的任何见解将不胜感激。
尝试
include __DIR__ . '/resources/config.php';
顺便说一句,使用作曲家是更好的选择!
"autoload": {
"files": ["/resources/config.php"]
}
好吧,这是谜底的答案。 但是首先感谢所有尝试提供帮助的人。
如果我已经发布了config.php文件的内容,则定义`
define("TEMPLATES_PATH", realpath(dirname(__FILE__) . 'resources/templates'));`
会被认为是不正确的。 config.php文件的文件路径是相对于该文件的,而不是目录结构。 因此,通过将文件移动到根目录,可以使用上述定义,但是在资源文件夹中时,资源目录已被过度指定。 因此,解决方案是确保config.php文件中的规范与该文件在项目中的位置有关; 因此将以上内容更改为:
define("TEMPLATES_PATH", realpath(dirname(__FILE__) . '/templates'));
解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.