2015-09-14 3 views
14

तक पहुंच पर Xdebug टूटता है मुझे अपने विकास पर्यावरण में Xdebug के साथ समस्या है।क्लास स्थैतिक संपत्ति

FROM library/php:5.5-apache 

RUN apt-get -qqy update && apt-get -qqy install \ 
       libpq-dev \ 
       libmcrypt-dev \ 
       libxml2-dev \ 
       ssl-cert \ 
       vim \ 
       git \ 
       mc \ 
     && rm -r /var/lib/apt/lists/* 

# compile and add xdebug 
RUN pecl install xdebug \ 
    && echo "zend_extension=xdebug.so" >> "/usr/local/etc/php/conf.d/xdebug.ini" 

# configure apache and vhosts 
RUN a2enmod rewrite ssl \ 
     && a2ensite 000-default default-ssl 

ENV APACHE_RUN_USER www-data 
ENV APACHE_RUN_GROUP www-data 
ENV APACHE_LOG_DIR /var/log/apache2 
ENV APACHE_RUN_DIR /var/run/apache2 
ENV APACHE_PID_FILE /var/run/apache2/apache2.pid 
ENV APACHE_LOCK_DIR /var/lock/apache2 

CMD ["apache2-foreground"] 

Xdebug सेटिंग्स:

[xdebug] 
xdebug.remote_enable=1 
xdebug.remote_autostart=0 
xdebug.remote_host=172.17.42.1 
xdebug.remote_port=9000 

सब कुछ अच्छा काम करता है लेकिन एक बात।

<?php 
class A { 
    static private $a; 

    static public function init() { 
     self::$a = 123; 
    } 
} 

A::init(); 

अगर मैं लाइन में self::$a = 123; या कदम पर एक ब्रेकपाइंट सेट, मैं:

Fatal error: Access to undeclared static property: A::$a 

मुझे लगता है कि लाइन में कदम नहीं है, डिबगिंग सत्र के बिना जारी है जब कोड डिबगिंग काई समस्या।

क्या गलत है?

+0

Xdebug v2.3.2 के साथ PHP 5.4.43 के साथ समान समस्या। डॉकर के माध्यम से स्वयं का निर्माण। – shark555

+0

मैंने विभिन्न xdebug संस्करणों, विभिन्न डीबग क्लाइंट का उपयोग किया है। मैंने pede के माध्यम से xdebug स्थापित किया है और खुद से संकलित। समस्या आधिकारिक डॉकर php छवि –

+0

के अंदर कहीं भी होनी चाहिए आप किस आईडीई का उपयोग कर रहे हैं? – bishop

उत्तर

1

मुझे लगता है कि यह XDebug में कहीं एक बग है - इन बग रिपोर्ट

इस बीच आप xdebug_break() का उपयोग करके समस्या के समाधान के सुलझाने के लिए सक्षम हो सकता है देखते हैं केवल उस पंक्ति के बाद कार्य करें जो अपवाद फेंक रहा है और वहां से डीबगिंग जारी रखता है। अपवाद फेंकने के बाद मैंने लाइन पर ब्रेकपॉइंट सेट करने का प्रयास किया और मैंने पाया कि ब्रेकपॉइंट पर्याप्त अपवाद को फेंकने के लिए पर्याप्त नहीं था।

नहीं एक आदर्श समाधान लेकिन उम्मीद है कि उन कीड़े जल्द ही

0

वर्णित केवल सरकारी PHP5 छवियों में reproduced किया जा सकता है त्रुटि को ठीक कर दिया जाएगा। PHP 7 छवियां ठीक काम करती हैं, और जब जेसी या उबंटू से कस्टम PHP5 FPM छवि का निर्माण करते हैं, तो त्रुटि भी नहीं होती है।

संबंधित मुद्दे