选择语言 :

 Core_Core::debug_path

将真实路径地址输出为调试地址

显示结果类似 ./system/libraries/Database.class.php

string Core_Core::debug_path( string $file [, boolean $highlight = bool false ] )

参数列表

参数 类型 描述 默认值
$file string Path to debug
$highlight boolean 是否返回高亮前缀,可以传字符颜色,比如#f00 bool false
返回值
  • string
File: ./core/classes/core.class.php
public static function debug_path($file, $highlight=false)
{
    if ($highlight)
    {
        if (IS_CLI)
        {
            # 命令行下输出带色彩的前缀
            $l = "\x1b[36m";
            $r = "\x1b[39m";
        }
        else
        {
            $l = '<span style="color:'.(is_string($highlight) && preg_match('/^[a-z0-9#\(\)\.,]+$/i',$highlight) ?$highlight:'#a00').'">';
            $r = '</span>';
        }
    }
    else
    {
        $l = $r = '';
    }

    $file = str_replace('\\', DS, $file);

    if (strpos($file, DIR_CORE) === 0)
    {
        $file = $l . './core/' . $r . substr($file, strlen(DIR_CORE));
    }
    elseif (strpos($file, DIR_TEAM_LIBRARY) === 0)
    {
        $file = $l . './team-library/' . $r . substr($file, strlen(DIR_TEAM_LIBRARY));
    }
    elseif (strpos($file, DIR_LIBRARY) === 0)
    {
        $file = $l . './libraries/' . $r . substr($file, strlen(DIR_LIBRARY));
    }
    elseif (strpos($file, DIR_MODULE) === 0)
    {
        $file = $l . './modules/' . $r . substr($file, strlen(DIR_MODULE));
    }
    elseif (strpos($file, DIR_DRIVER) === 0)
    {
        $file = $l . './drivers/' . $r . substr($file, strlen(DIR_DRIVER));
    }
    elseif (strpos($file, DIR_PROJECT) === 0)
    {
        $file = $l . './projects/' . $r . substr($file, strlen(DIR_PROJECT));
    }
    elseif (strpos($file, DIR_TEMP) === 0)
    {
        $file = $l . './data/temp/' . $r . substr($file, strlen(DIR_TEMP));
    }
    elseif (strpos($file, DIR_LOG) === 0)
    {
        $file = $l . './data/log/' . $r . substr($file, strlen(DIR_LOG));
    }
    elseif (strpos($file, DIR_CACHE) === 0)
    {
        $file = $l . './data/cache/' . $r . substr($file, strlen(DIR_CACHE));
    }
    elseif (strpos($file, DIR_DATA) === 0)
    {
        $file = $l . './data/' . $r . substr($file, strlen(DIR_DATA));
    }
    elseif (strpos($file, DIR_ASSETS) === 0)
    {
        $file = $l . './wwwroot/assets/' . $r . substr($file, strlen(DIR_ASSETS));
    }
    elseif (strpos($file, DIR_UPLOAD) === 0)
    {
        $file = $l . './wwwroot/upload/' . $r . substr($file, strlen(DIR_UPLOAD));
    }
    elseif (strpos($file, DIR_WWWROOT) === 0)
    {
        $file = $l . './wwwroot/' . $r . substr($file, strlen(DIR_WWWROOT));
    }
    elseif (strpos($file, DIR_SYSTEM) === 0)
    {
        $file = $l . './' . $r . substr($file, strlen(DIR_SYSTEM));
    }

    $file = str_replace('\\', '/', $file);

    return $file;
}