2013-03-28 14 views
11

Zakładam, że nie jest to możliwe, ale, jako że jestem tylko trochę bardziej zaawansowany niż początkujący w PHP, mam nadzieję, że się mylę. :-)zwracanie numeru wiersza w php-script

Zastanawiam się, czy jest możliwe, aby skrypt php zwrócił numer wiersza, w którym wywoływane jest jakieś polecenie. Mam problem z opisaniem tego, co chcę, więc może przykład.

Mam kod php, który wywołuje MySQL przy wielu okazjach. W linii 49 jest:

$resultDevice=mysql_query("select * from `XDevices` where $criterionDevice ORDER BY XDevices.Device_ID ASC ;") or die ("MySQL-Error in settingsU line 49: " . mysql_error()); 

Tekst "linia 49" napisałem ręcznie. Czy mogę zmienić ten numer "49", jeśli zmienię swój kod? Ułatwiłoby mi to życie w debugowaniu. Oczywiście mogę wstawić inny tekst liniowy do die, ale linie są dużo łatwiejsze do znalezienia w edytorze tekstów.

+0

mea culpa - otworzyłem zarówno serverfault, jak i stackoverflow i napisałem moje pytanie w niewłaściwej zakładce. –

Odpowiedz

34

Dość pewne

echo __LINE__; 

Zrobi to, co chcesz.

+1

wielkie dzięki - doprowadziło mnie bezpośrednio do innych miłych stałych. –

2

jeśli chcesz ślad można użyć (na PHP 4> = 4.3.0 :)

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

Można użyć do tego debug_backtrace albo zawsze mijają linię (z __LINE__)

Powiązane problemy