在php站点全局保存路径?

时间:2015-12-29 07:59:48

标签: php session-variables state web-testing

目前我有一个用PHP编写的网站。我将该网站的完整版本放在单独的目录中(例如test001,test002)以进行测试......

所有webcode文件中都需要初始化文件init.php,其中包含以下行:

require_once $_SERVER['DOCUMENT_ROOT'].'/test002/init.php';

但是,当我更改测试目录时,我必须在所有文件中修改此行...我正在寻找一种方法将路径保存到init.php,以便只能更改一次。< / p>

  • 我怎样才能做到这一点?
  • 我是否必须使用$_SESSION

4 个答案:

答案 0 :(得分:1)

会话不是一个很好的解决方案。你可以创建一个配置文件。然后你可以这样包括 的的config.php

$file=dirname(__FILE__).'/test002/init.php'; 
include($file);

在其他php文件中

include('config.php');

并在您需要的所有文件上调用配置文件。像这样你只需要改变配置文件中的路径

答案 1 :(得分:1)

如果每个文件夹(test001test002等)都有init.php文件,并且每个init.php不同,那么您可以使用魔术常量{{1 }}

__DIR__

如果require_once( __DIR__ . "\init.php" ); 在各个测试文件夹中相同,那么最好将init.php放在这些文件夹中并使用公共包含路径。

init.php

答案 2 :(得分:1)

老工作方式:

require_once('init.php'); 
//This is for all files in the same directory 

require_once('../init.php');
//This is for all files in a directory 1 lvl under the init.

require_once('../../init.php');
//This is for all files in a directory 2 lvl under the init. .. And so on

如果所有文件都在1个基本目录中(例如test001,test002 ......),则没有必要使用其他任何东西。

答案 3 :(得分:0)

制作congig.php文件并定义常量如下。

<?php

 $web_path = "test002/init.php";  

 define('PATH',$_SERVER['DOCUMENT_ROOT']);

   new_path = PATH.'/'.$web_path; 

?>