PHP找到require_once真实路径

B.B*_*ing 3 php realpath require-once

我需要require_once这个文件main.class.php,并functions.phpconfig.phpadmin/test.php.如何找到php需要真正的路径?!

注:main.class.phpclass folder,functions.phpincludes folderconfig.phproot目录test.phpadmin folder.

文件目录:

root
    /admin/
        ->test.php 
    /class/
        ->main.class.php
    /includes/
        ->functions.php
    /templates
    config.php
    phpinfo.php
Run Code Online (Sandbox Code Playgroud)

Phi*_*hil 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';
Run Code Online (Sandbox Code Playgroud)

更新

如果我正确地按照你的问题,假设你想在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';
Run Code Online (Sandbox Code Playgroud)

管理员/ test.php的

require_once __DIR__ . '/../config.php';
Run Code Online (Sandbox Code Playgroud)