2016-03-08 22 views
16

मैं Xdebug सेटअप करने की कोशिश कर रहा हूं क्योंकि मैं echoes और var_dumps का उपयोग करने से थक गया हूं। मैं php-debug plugin के साथ अपने आईडीई के रूप में एटम का उपयोग कर रहा हूं। मैं सर्वर के रूप में लार्वेल होमस्टेड वीएम का उपयोग कर रहा हूं। 9999 एटम के लिए पोर्ट 9000 अग्रेषित प्लगइन निम्न सेटिंग के साथ स्थापित है: मैं एटम में एक ब्रेकपाइंट सेट enter image description hereएटम + एक्सडेबग सेटअप

, मैं अपने पृष्ठ पर ब्राउज़ लेकिन ब्रेकप्वाइंट को गति प्रदान नहीं करता है। मेरे पास एक झुकाव है कि इसमें आईडीई कुंजी के साथ कुछ करना है लेकिन मुझे नहीं पता कि आगे कैसे बढ़ना है। enter image description here

क्या किसी को परमाणु के लिए आईडीई कुंजी पता है? या क्या मैं कुछ और याद कर रहा हूं?

संपादित करें: मैं xdebug.ini के लिए निम्न जोड़ दिया है:

xdebug.auto_trace = 0 
xdebug.collect_includes = 1 
xdebug.collect_params = 1 
xdebug.collect_return = 0 
xdebug.collect_vars = "Off" 
xdebug.default_enable = "On" 
xdebug.dump.COOKIE = "" 
xdebug.dump.FILES = "" 
xdebug.dump.GET = "" 
xdebug.dump.POST = "" 
xdebug.dump.REQUEST = "" 
xdebug.dump.SERVER = "" 
xdebug.dump.SESSION = "" 
xdebug.dump_globals = 1 
xdebug.dump_once = 1 
xdebug.dump_undefined = 0 
xdebug.extended_info = 1 
xdebug.file_link_format = "" 
xdebug.idekey = "VVVDEBUG" 
xdebug.manual_url = "http://www.php.net" 
xdebug.max_nesting_level = 100 
xdebug.overload_var_dump = 1 
xdebug.profiler_append = 0 
xdebug.profiler_enable = 0 
xdebug.profiler_enable_trigger = 1 
xdebug.profiler_output_dir = "/tmp" 
xdebug.profiler_output_name = "cachegrind.out.%t-%s" 
xdebug.remote_autostart = 1 
xdebug.remote_enable = 1 
xdebug.remote_handler = "dbgp" 
xdebug.remote_host = "192.168.50.1" 
xdebug.remote_log = /srv/log/xdebug-remote.log 
xdebug.remote_mode = "req" 
xdebug.remote_port = 9000 
xdebug.show_exception_trace = 0 
xdebug.show_local_vars = 0 
xdebug.show_mem_delta = 0 
xdebug.trace_format = 0 
xdebug.trace_options = 0 
xdebug.trace_output_dir = "/tmp" 
xdebug.trace_output_name = "trace.%c" 
xdebug.var_display_max_children = -1 
xdebug.var_display_max_data = -1 
xdebug.var_display_max_depth = -1 

उत्तर

1

आईडीई कुंजी मुझे (मैक/अपाचे) के लिए xdebug.atom है। एटम php-डिबग config में, 9000

+0

यह मेरे लिए उबंटू 16.04 :-) पर काम करता है। – erknrio

4

को सर्वर पोर्ट निर्धारित करते हैं, जैसा उबंटू 16.04 और डेबियन 7 :-) पर मेरे लिए परमाणु आईडीई कुंजी xdebug.atom काम करता है @sparkos72 कहते हैं। मैं उनका जवाब बढ़ाने की कोशिश करता हूं।

मैं xdebug.ini में इस config साथ php-debug परमाणु विस्तार के लिए इस्तेमाल किया (पथ: /etc/php5/apache2/conf.d/xdebug.ini)।

xdebug.remote_enable=1 
xdebug.remote_handler=dbgp 
xdebug.remote_mode=req 
xdebug.remote_host=172.17.0.1 
xdebug.remote_port=9000 
xdebug.idekey=xdebug.atom 
xdebug.remote_autostart=true 

मैं डेबियन 7 + अपाचे + PHP 5 के साथ एक डोकर कंटेनर, यही कारण है क्योंकि मैं 127.0.0.1 के बजाय आईपी 172.17.0.1 उपयोग करते हैं। मेरी "वास्तविक" मशीन उबंटू है।

उम्मीद है कि यह मदद करता है।

0

मैं जानता हूँ कि यह देर हो चुकी है लेकिन फिर से:

आपका .ini फ़ाइल इस है:

xdebug.idekey = "VVVDEBUG" 

जिसे आप "सबसे आसान Xdebug में मूल्य" VVVDEBUG "(उद्धरण के बिना) निर्धारित करने की आवश्यकता का मतलब "विस्तार सेटिंग्स जहां आप" एटम "का उपयोग करते हैं वर्तमान में

0

कोई भी जवाब मेरे लिए काम नहीं करता है, इसलिए मैं अपना खुद का एक छोड़ रहा हूं।

सेटअप

  • सुनिश्चित करें xdebug सक्षम किया गया है; sudo phpenmod xdebug या समकक्ष
  • सुनिश्चित करें xdebug सही तरीके से कॉन्फ़िगर:
    • xdebug.remote_enable = 1
    • xdebug.remote_handler = dbgp
    • xdebug.remote_mode = अनुरोध
    • xdebug.remote_host = 172.17.0.1 (के रूप में अपने स्थापना के अनुसार)
    • xdebug.remote_port = 9000 (अपने सेटअप प्रति) के रूप में
  • नहीं किया xdebug करो।remote_autostart क्योंकि यह सामान्य अनुरोधों के लिए भी डीबग सामान शुरू करता है। इसलिए, यदि आप क्रोम/फ़ायरफ़ॉक्स एक्सटेंशन के लिए डीबग मोड में नहीं हैं, तो डिबगिंग डेटा को व्यक्त करने का प्रयास किया जाएगा, जो किसी भी कारण से चीजों को धीमा कर सकता है।
  • Xdebug क्रोम/फ़ायरफ़ॉक्स एक्सटेंशन और सेटअप आईडीई कुंजी xdebug-atom के रूप में स्थापित करें (मुझे xdebug.atom भी काम करने के लिए मिला)।

डिबगिंग

आप वास्तव में कुछ डिबग करने के लिए चाहते हैं, तो

  • एक ब्रेकपाइंट जहाँ आप अपने कोड में चाहते जोड़ें; Alt + F9 या समकक्ष।
  • एटम में PHP डीबग पैनल खोलें; Ctrl + Alt + D या समकक्ष। यदि आप उबंटू के कुछ संस्करणों पर हैं, तो आप शॉर्टकट Ctrl + Alt + D बदल सकते हैं डेस्कटॉप दिखाएं। इस मामले में, डीबगर टॉगल करने के लिए IDE में PHP डीबग बटन पर क्लिक करें।
  • डीबगर को कुछ कहना चाहिए पोर्ट 9000 या PHP डीबग सेटिंग्स में सेट पोर्ट को सुनना।
  • उस पृष्ठ को खोलें जिसे आप अपने ब्राउज़र में डीबग करना चाहते हैं (यदि पहले से नहीं खुलता है) और डीबग मोड सक्षम करने के लिए डिबगिंग एक्सटेंशन आइकन पर क्लिक करें। यह वास्तव में आपके दस्तावेज़ में XDEBUG_SESSION=xdebug-atom, आदि
  • डिबग एक्सटेंशन सक्षम होने के बाद, पृष्ठ को रीफ्रेश करें और आपको डीबगर का उपयोग करने में सक्षम होना चाहिए (यदि सब ठीक हो गया है)।

उम्मीद है कि इससे मदद मिलती है। इसे काम करने के लिए थोड़ी देर लग गई। अब मुझे PHP तूफान खरीदने की ज़रूरत नहीं है!

0

आईडीई कुंजी PHP3.2 + एटीओएम + एक्सएएमपीपी + एक्सडीईबीयूजी हेल्पर पर मेरे लिए xdebug-atom है, जो XDEBUG हेल्पर का उपयोग करने की दृढ़ता से अनुशंसा करता है, आप वहां आईडीई कुंजी सेट कर सकते हैं।