[英]php - header file - relative paths problem
我在 php 中有一个 web 应用程序。 我有一个header.php
文件,其中我有打开 html 标记,元数据,ZC7A628,jsFBA22E28EB617B 文件包括文件
我在这个应用程序中有多个文件夹。 我在 header.php 中给出了header.php
8CBA22E28EB17B5F5C6AE2A266AZ,js 文件的相对路径。 我面临的问题是,当我在其他文件中包含这个header.php
文件时,. ./test-folder/my-file.php
相对路径中断,
所以为了解决这个问题,我在需要的地方给出了绝对路径。 但是每次上传到服务器时,我都必须更改这些路径。 这可以通过任何其他方式完成吗?
提前致谢
安吉
不要使用 static 值作为路径,而是为文档根定义一个常量并使用该常量
define('ROOT_PATH',$_SERVER['DOCUMENT_ROOT']);
在包含文件时,您可以使用此常量。
include ROOT_PATH.'/some_dir/file.php';
你的应用程序架构不好。 尝试搜索有关MVC的信息。
这个答案可能有用: https://stackoverflow.com/questions/5721353/what-is-good-neat-architecture-in-programming/5793753#5793753
所以:
相对路径相对于当前工作目录 (cwd)。 如果您只包含另一个 cwd不会更改的文件。
如果你想拥有相对于当前脚本文件路径的路径(有点),你可以使用例如
require dirname(__FILE__).'/some_dir/file.php';
或从 php 5.3 开始
require __DIR__.'/some_dir/file.php';
如果我正确理解了您的问题,您只想知道应用程序的根文件夹,而无需对其进行硬编码。
更简单的方法是按照 Shakti 的回答定义一个常量。
但是,您实际上可以在根文件夹中有一个具有唯一名称的文件,例如“foobar”,然后从当前目录向上遍历树,直到找到 foobar。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.