PHP脚本是否可以返回调用某些命令的行号?我无法描述我想要的东西,所以也许是一个例子。
我有多次调用MySQL的PHP代码。第49行是:
$resultDevice = mysql_query("Some SQL;") or die ("MySQL-Error in settingsU line 49: " . mysql_error());
我手动编写的文字“第49行”。如果我更改代码,是否可以更新此号码“49”?它会让我的生活更容易调试。当然,我可以将其他一些特定于行的文本放入die
,但在文本编辑器中更容易找到行。
答案 0 :(得分:49)
答案 1 :(得分:4)
如果你想要一个你可以使用的跟踪(对于PHP 4> = 4.3.0:)
function error_report_function($error)
{
$dbgt=debug_backtrace();
return "$error in {$dbgt[1][file]} on line {$dbgt[1][line]}";
}
您可以使用debug_backtrace
或者总是通过该行(使用__LINE__
)
答案 2 :(得分:1)
您可以使用以下内容:
function throwSQLError($file, $line, $error) {
return "MySQL-Error in " . $file . " on line " . $line . ": " . $error;
}
$result = mysql_query("Some SQL;") or die (throwSQLError(__FILE__, __DIR__, mysql_error()));
这为您提供了一个动态函数来引发可以多次使用的错误。
未经测试,仅在原始编辑器中编写。