有没有办法轻松打开/编辑浏览器中PHP错误中显示的文件?

时间:2011-07-10 20:25:05

标签: php

是否有办法(通过浏览器插件或其他方式)轻松打开显示导致错误的文件?

例如,能够点击下面的通知并在我的IDE中打开文件,而不是必须返回我的IDE并在通知出现时查找文件,这将是非常好的。

注意:未定义的索引:第141行的C:\ xampp \ htdocs \ index.php中的xyz

2 个答案:

答案 0 :(得分:1)

您可以使用set_error_handlerregister_shutdown_function(处理致命错误)来拦截错误并以不同方式显示错误。以下示例不是您所要求的功能齐全的,而是应该指向正确的方向。我会告诉你如何启动你选择的程序。

<?php

function error_handler($errno, $errstr, $errfile, $errline)
{
  echo $errstr . ' in <a href="file://' . $errfile . '">'.$errfile.'</a> on line ' . $errline . PHP_EOL;
}

function shutdown_handler()
{
  $err = error_get_last();

  // Fatal errors don't trigger the error handler so trigger the error handler manually.
  if ( ! empty($err['type']) && $err['type'] === E_ERROR )
    error_handler($err['type'], $err['message'], $err['file'], $err['line']);
}

set_error_handler('error_handler');
register_shutdown_function('shutdown_handler');

// The following 2 line throw errors.
preg_replace('invalid regex', '', 'Sample');
stack('overflow');

答案 1 :(得分:1)

经过一些进一步的研究后,我发现安装Xdebug并使用 file_link_format 配置变量正是我所需要的。

This forum thread帮助我使用Netbeans进行设置,这是我正在使用的IDE,但是您可以使用任何IDE /文本编辑器来更改它们建议的批处理文件。