Почему переменные не отображаются в окне отладки в PhpStorm? - PullRequest
0 голосов
/ 30 мая 2018

У меня работает Xdebug, я могу остановиться и пройти через точки останова.Но уже достигнутые переменные не отображаются в окне переменных.См. Рисунок - переменные $test и $test2 не отображаются.

enter image description here

Моя конфигурация в php.ini -

[XDebug]
zend_extension = /usr/lib/php/20170718/xdebug.so
xdebug.remote_host = 127.0.0.1
xdebug.remote_port = 10000
xdebug.remote_mode = req
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.idekey = "PHPSTORM"

Ответы [ 2 ]

0 голосов
/ 21 октября 2018

Я бился головой о свой стол с этой самой проблемой последние несколько дней.Запускать вещи в режиме CLI (например, при запуске тестов) было нормально, но, пытаясь просмотреть сайт в браузере и заставить его достичь точки останова, я также не увидел локально инициализированных переменных.

Похоже, что проблема заключается в модуле OpCache.По-видимому, это приводит к некоторой внутренней оптимизации, и переменные становятся невидимыми для стека Xdebug.

Отключите модуль OpCache, удалив символическую ссылку в конфигурации модулей PHP, и вы сможете видеть локальные переменные, как и ожидалось..

Это работает на последней версии PHP 7.2 (FPM) для образа Ubuntu в контейнере Docker.

HTH =)

0 голосов
/ 08 сентября 2018

У меня была похожая проблема.Случилось так, что версия php была 7.2, но Dockerfile установил расширения для версии 7.1.

...