Я играю с PHPStorm и XDebug. Все работает нормально, за исключением странной причуды:
Если я установлю точку останова перед запуском скрипта или пока он уже приостановлен, все работает нормально. Но если я установлю точку останова во время работы скрипта, он никогда не будет достигнут. PHPStorm также не помечает его флажком, как это делает рабочие точки останова. Кроме того, опция «Приостановить программу» также не работает.
Похоже, что мне нужно указать заранее, перед запуском скрипта, где я хочу, чтобы он остановился дальше.
Мой коллега, который использует Zend Studio и Zend Debugger, также говорит, что так было до тех пор, как он себя помнит.
С другой стороны, поиск такого поведения в Интернете ничего не дает. Это странно, я думаю, что люди заметили бы что-то подобное и написали бы об этом.
Есть ли что-то странное в нашем сценарии? Это действительно мало что делает — просто зацикливание и вызов sleep(1)
, ожидая сигнала. Возможно, вы не можете приостановить спящий PHP-скрипт? Но нет, это также не дает никаких результатов поиска.
У кого-нибудь есть идеи, почему отладчик ведет себя так?
Задача ещё не решена.
Других решений пока нет …