如何在自定义错误消息中包含php源代码的行号?

时间:2011-03-01 21:51:11

标签: php html

我想在编程时使用正确的错误生成器(HTML + PHP)。 当我遇到错误并输入变量时,我怎么能拿线?

示例:

  

echo“错误#03:变量未定义行#”。$ line。“”;

感谢。

3 个答案:

答案 0 :(得分:2)

有一个预定义的常量__LINE__,其中包含实际调用它的行。

但是,我认为trigger_error()函数非常适合“错误生成器”术语,因此正是您正在寻找的内容。
它不仅会向您显示一行,一个文件和一个时间戳,而且还会遵循PHP错误报告设置的一般行为,这非常重要 - 您不应该隐式地回显错误,而是将其置于标准错误流中

对于自定义错误处理程序,还有一个debug_backtrace()函数。

答案 1 :(得分:2)

您要寻找的变量是:

__LINE__
__FILE__
__FUNCTION__
__CLASS__

答案 2 :(得分:0)

假设您指的是PHP编译时错误和警告,则会自动显示行号。由于这些消息是在编译时生成的(因此可能导致脚本无法完全执行),我建议使用默认消息而不是使用自定义解决方案。

如果PHP没有显示错误消息,请使用以下代码在页面上显示所有PHP错误消息和警告:

error_reporting(E_ALL);