Conteúdos

Breakpoint condicional com VIM e PHP

Conteúdos

Olá a todos, As vezes precisamos fazer um debug no nosso código no meio de um loop. Mas ficar passando pelo loop inteiro é muito demorado. Para isso podemos fazer um breakpoint condicional. Ao seja, somente pare no breakpoint caso uma condição seja verdadeira. Vamos a um exemplo:

1
2
3
4
5
<?php
    for ($x=0; $x < 50; $x++) {
        echo $x . "\n";
    }
?>

Ao executar este código (no terminal: php nome_arquivo.php), teremos uma listagem até 49. No vim, com o vdebug instalado, vá na linha 4 e digite :Breakpoint conditional $x == 11 Aperte F5, e veja a mágica acontecer. Ele vai parar no breakpoint caso o valor de $x seja 11. A sintaxe é: :Breakpoint conditional $variavel == valor, sendo que você pode trocar o == por <, >, <=, >= … Existem outros tipos de Breakpoint, veja mais em :h vdebug Até a próxima!