Tôi gặp sự cố với Xdebug trong môi trường phát triển của mình.Xdebug ngắt truy cập vào thuộc tính tĩnh lớp
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"]
thiết lập Xdebug:
[xdebug]
xdebug.remote_enable=1
xdebug.remote_autostart=0
xdebug.remote_host=172.17.42.1
xdebug.remote_port=9000
Mọi thứ hoạt động tốt, nhưng có một điều. Khi gỡ lỗi mã:
<?php
class A {
static private $a;
static public function init() {
self::$a = 123;
}
}
A::init();
Nếu tôi đặt một breakpoint trên self::$a = 123;
hoặc bước vào dòng, tôi nhận được:
Fatal error: Access to undeclared static property: A::$a
Nếu tôi không bước vào dòng đó, phiên gỡ rối tiếp tục mà không có vấn đề gì không.
Có vấn đề gì?
Cùng một vấn đề với PHP 5.4.43 với Xdebug v2.3.2. Xây dựng riêng qua docker. – shark555
Tôi đã sử dụng các phiên bản xdebug khác nhau, các trình gỡ rối khác nhau. Tôi đã cài đặt xdebug qua pecl và biên dịch bởi bản thân mình. Vấn đề phải ở đâu đó bên trong hình ảnh chính thức của docker php –
Bạn đang sử dụng IDE nào? – bishop