私はphpstorm4.x/ xdebug 2.2.3 /php5.4.3で同様の問題を抱えていました
コードの高い位置にブレークポイントを設定すれば機能しますが、行をステップスルーすると、デバッガーが実際のコードと同期していないことがわかりました。これは、いくつかのブレークポイントがスキップされたことを意味しました。
多くの実験の結果、問題の原因は変数に改行があることが原因であることがようやくわかりました。
例えば:
$q = "SELECT *
FROM table
WHERE
product_id = 'whatever'
AND product_status != 'inactive'";
このステートメントに到達すると、デバッガーは4〜5行でスローされます。
これを次のように変更します。
$q = "SELECT * FROM table WHERE product_id = 'whatever' AND product_status != 'inactive'";
問題を修正しました!
明らかに、これは、SQLクエリを対象としたものだけでなく、改行を含むすべてのvar宣言に影響します。私は読みやすさのためにこれを行うので少し苦痛ですが、これが同じ問題を抱えている他の誰かのために時間を節約することを願っています。