PHP:绝对与相对路径

前端之家收集整理的这篇文章主要介绍了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’;

显然,我想你每次都不改变路径=)反正如果你需要这样做总是更简单的改变一个文件包含而不是数百.

希望这对你有意义=)

猜你在找的PHP相关文章