2013-03-28 6 views
11

में एक लाइन नंबर लौटाते हुए मुझे लगता है कि यह करने योग्य नहीं है, लेकिन जैसा कि मैं PHP में शुरुआती से थोड़ा अधिक उन्नत हूं, मुझे गलत होने की उम्मीद है। :-)php-script

तो, मुझे आश्चर्य है कि एक php स्क्रिप्ट के लिए एक लाइन नंबर वापस करने के लिए संभव है जिसमें कुछ कमांड कहा जाता है। मुझे जो कुछ भी चाहिए वह शायद एक उदाहरण का वर्णन करने में परेशानी हो रही है।

मेरे पास एक 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 में डाल सकता हूं, लेकिन पाठ-संपादक में रेखाएं ढूंढना बहुत आसान है।

+0

विदेश मंत्रालय culpa - मैंने सर्वरफॉल्ट और स्टैक ओवरफ्लो दोनों खोले हैं और मैंने गलत प्रश्न में अपना प्रश्न लिखा है। –

उत्तर

34

सुंदर कुछ

echo __LINE__; 

तुम क्या करोगे तुम क्या चाहते।

+1

बहुत बहुत धन्यवाद - यह मुझे सीधे कुछ अन्य अच्छे स्थिरांक के लिए नेतृत्व किया। –

2

यदि आप एक का पता लगाने चाहते हैं आप उपयोग कर सकते हैं (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__ साथ पारित)