首页 > 在写php的一个框架,遇到个奇怪的问题....

在写php的一个框架,遇到个奇怪的问题....


第15行要是注释掉


php报错都没有直接连页面都显示不出来。
p就是一个打印的函数

可是这个应该是自动加载的类有问题

程序走到16行 自动加载类的时候 页面就无法访问了。

程序没有报错。

有人能看出大概是什么问题吗


E:\xa\htdocs\Ji/Ji/Core/Application.php
自己已经找到问题了,路径\x 这个包含的时候应该是看成16进制了。
加载的时候路径就变成E:a\htdocs\Ji/Ji/Core/Application.php
貌似是这样的


lz你好,分享个调试函数,功能和你那个p一样

/*-- 调试输出函数 --*/
function d($val='', $name='', $type = false) {
    static $i = 1;
    ($i < 2) && header('Content-Type:text/html;charset=utf8');
    $dbArr = debug_backtrace();
    $dbStr = '<span style="padding-left:15px;/*color:#aaa;*/">{Path:';
    isset($dbArr[0]) && ($dbStr .= $dbArr[0]['file'] . ' [line:'.$dbArr[0]['line'].']');
    $dbStr .= '}</span>';
    $str  = '<hr /><pre style="-moz-border-radius:8px;width:99%;overflow:auto;margin:0;padding:1px 6px 6px;font-size:15px;border:1px solid #BBB;background-color:#DDD;color:green;">';
    $nameTmp = str_replace('die', '', $name);
    $str .= ($nameTmp === '') ? '<h3 style="background-color:#AAA;padding:2px 0 2px 3px;margin:0 0 15px;border-bottom:1px dashed #666;font-weight:normal;">{'.$i++.'}'.$dbStr.'</h3>'
                              : ('<h3 style="background-color:#AAA;padding:2px 0;margin:0 0 15px;border-bottom:1px dashed #666;"><span style="font-weight:normal;padding-left:3px;margin:0 10px 0 0;">{'.$i++.'}</span>'.$nameTmp.''.$dbStr.'</h3>');
    echo $str;
    ($type || empty($val)) ? var_dump($val) : print_r($val);
    echo '</pre><hr />';
    (strpos($name, 'die') !== false) && die();
}

使用方法:
d($var)
d($var, 'dieABC'); ABC为变量的一些说明,如果说明字符中带有die字符串,程序会输出后die()
另外还可以显示出当前调试函数在哪个文件哪一行被添加,方便找到调试位置。

【热门文章】
【热门文章】