Ответ 1
Довольно точно
echo __LINE__;
Вы сделаете то, что хотите.
Я предполагаю, что это не выполнимо, но, поскольку я немного более продвинутый, чем новичок в PHP, я надеюсь ошибиться.:-)
Итак, мне интересно, может ли php script вернуть номер строки, в которой вызывается некоторая команда. У меня возникли проблемы с описанием того, что я хочу, возможно, примером.
У меня есть php-код, который вызывает MySQL во многих случаях. В строке 49:
$resultDevice=mysql_query("select * from `XDevices` where $criterionDevice ORDER BY XDevices.Device_ID ASC ;") or die ("MySQL-Error in settingsU line 49: " . mysql_error());
Текст "строка 49" я написал вручную. Можно ли обновить этот номер "49", если я изменю свой код? Это облегчило бы мою жизнь для отладки. Конечно, я могу поместить в текст die
текст другой строки, но строки гораздо проще найти в текстовом редакторе.
Довольно точно
echo __LINE__;
Вы сделаете то, что хотите.
если вы хотите использовать трассировку (для 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__
)