PHP:绝对与相对路径
如果我使用绝对路径,我不能将整个目录移动到新的位置.
如果我使用相对路径,我不能将单个文件移动到新的位置. 这里有什么解决方案?你是否设置了一个保存根路径的配置文件,然后从那里开始?还是你有一个规则:永远不要移动文件? 我在一些项目中看到人们使用dirname(FILE).这是什么意思,我的意思是,为什么不把它直接退出,因为dirname是相对的(取决于文件的位置)?
您应该使用将包含在每个文件第一行的配置文件,例如您的应用程序看起来像这样
root / App / Plugins 在你的根目录里面:app-config.php if ( !defined('ABSPATH') ) define('ABSPATH',dirname(__FILE__) . '/'); 现在,假设你必须包含一个插件文件,所以 在你的Plugin目录里面:my-plugin.php require_once '../../app-config.php'; 现在这一行下面的一切都可以使用ABSPATH 你想要加载一个图像的例子 <img src='".ABSPATH."Public/images/demo.png' alt=''/> 现在,如果你的应用程序被设计为自动加载一些文件,事情会更简单 plugin-widget-1.php 所以这个文件中的所有内容或由my-plugin.php文件加载的任何其他文件都可以使用ABSPATH,而不包括每次app-config.php文件. 考虑到这一点,你可以把所有你想要的所有短的进入app-config.php示例 define('UPLOAD_PATH',ABSPATH. 'Public/uploads/'); define('IMAGES_PATH',ABSPATH. 'Public/images/'); define('HELPERS_PATH',ABSPATH. 'App/helpers/'); ... 所以,现在你已经定义了,如果你需要移动一个文件,我们来说一个文件夹前进的例子: root / App / Plugins / Utils 只是inlucde require_once’../../../app-config.php’; 显然,我想你每次都不改变路径=)反正如果你需要这样做总是更简单的改变一个文件包含而不是数百. 希望这对你有意义=) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |