3

我需要这个require_once文件main.class.phpfunctions.php。如何 php 查找需要真实路径?!config.phpadmin/test.php

注意:main.class.phpclass folderfunctions.phpincludes folderconfig.phproot目录 和test.phpadmin folder.

文件目录:

root
    /admin/
        ->test.php 
    /class/
        ->main.class.php
    /includes/
        ->functions.php
    /templates
    config.php
    phpinfo.php
4

3 回答 3

5

我会将您的root文件夹添加到包含路径并从那里开始工作。

admin/test.php

set_include_path(implode(PATH_SEPARATOR, array(
    realpath(__DIR__ . '/..'),
    get_include_path()
)));

require_once 'class/main.class.php';
require_once 'includes/functions.php';
require_once 'config.php';

更新

如果我正确地关注了你的问题,假设你想在config.php文件中定义它,你会做这样的事情

配置文件

set_include_path(implode(PATH_SEPARATOR, array(
    __DIR__,
    get_include_path()
)));

require_once 'class/main.class.php';
require_once 'includes/functions.php';

管理员/test.php

require_once __DIR__ . '/../config.php';
于 2013-04-01T22:02:14.613 回答
3

这是一个不依赖于 $_SERVER 变量的解决方案:

require_once(__DIR__.'/../class/main.class.php');
require_once(__DIR__.'/../includes/functions.php');
require_once(__DIR__.'/../config.php');
于 2013-04-01T22:13:30.400 回答
0

admin/test.php会要求这样:

require_once("../class/main.class.php");
require_once("../includes/functions.php");
require_once("../config.php");
于 2013-04-01T21:59:25.073 回答