0

我最近开始了一个比以往更大的项目,我发现很难管理所有目录的链接(例如包括文件)。

有没有办法我可以定义一个基本路径,然后从那里开始。

所以是这样的:

require(BASEPATH.'/folder/file.php');

代替:

require('../../folder/file.php');

所以基本上是一种在移动文件时链接不会中断的方法。

4

2 回答 2

1

您始终可以根据__DIR__索引文件/前端控制器中的值存储或定义变量:

// in index.php
define('BASE_DIR', __DIR__);

在其他文件中,您现在可以像这样引用基目录:

// in some_other.php
require(BASE_DIR . '/folder/file.php');
于 2012-07-28T01:54:55.170 回答
1

所以你说你已经开始了一个大项目——然后你从一开始就做它,即从当前点开始。

我建议你创建const.php包含这个:

<?php

$constants = array(

   'DS' => DIRECTORY_SEPARATOR, //shorthand
   'ROOT' => __DIR__,
   'LIBS' => ROOT . '/libs'
);

//and so on - add more


//Define each one now:
foreach ($constants as $const => $val ){
  define($const, $val);
}

您项目的任何文件:

<?php


require ('../const.php');


//now constants are available and you can access them:
require ROOT . 'some.php'; //etc etc
require ROOT . 'another.php';
于 2012-07-28T02:03:40.087 回答