如何在PHP脚本中返回行号

Kri*_*s_R 30 php debugging

PHP脚本是否可以返回调用某些命令的行号?我无法描述我想要的东西,所以也许是一个例子.

我有PHP代码在很多场合调用MySQL.第49行是:

$resultDevice = mysql_query("Some SQL;") or die ("MySQL-Error in settingsU line 49: " . mysql_error());
Run Code Online (Sandbox Code Playgroud)

我手动编写的文字"第49行".如果我更改代码,是否可以更新此号码"49"?它会让我的生活更容易调试.当然,我可以将其他一些特定于行的文本放入其中die,但在文本编辑器中更容易找到行.

Dan*_*Dan 66

你可以使用魔法常量 __LINE__.

echo  __LINE__;
Run Code Online (Sandbox Code Playgroud)

将显示该语句在文件中的行号.

  • 非常感谢——它直接把我带到了其他一些不错的常量。 (2认同)

7-i*_*bad 6

如果要跟踪,可以使用(对于PHP 4> = 4.3.0 :)

function error_report_function($error) 
{
$dbgt=debug_backtrace();
return "$error in {$dbgt[1][file]} on line {$dbgt[1][line]}";
}
Run Code Online (Sandbox Code Playgroud)

您可以debug_backtrace为此使用,否则请始终通过(__LINE__