Home > PHP, Vim > Vim – PHP Debugger

Vim – PHP Debugger

Debugowanie skryptów PHP jest sprawą mało przyjemną. Kluczem do poprawy jakości jest zapytanie w Google o “vim php debugger”. Po wielu godzinach instalacji wszystko zaczęło działać poprawnie. Straciłem na to wiele godzin, bo mój system jest skompilowany trochę inaczej, niż standardowy. Dzięki zgromadzonej wiedzy, cały proces instalacji można by skrócić do 1 godziny.
  1. Zacznijmy od instalacji języka programowania Python. Testowałem dla wersji 2.4. Domyślna konfiguracja jest wystarczająca.
  2. Warto pobrać najnowszą wersję VIM: “VIM 7″. Następnie skompilować go z obsługą pythona: ./configure –help | grep python ./configureenable-pythoninterp make make install
  3. Ze strony: http://www.vim.org/scripts/script.php?script_id=1152 pobieramy skrypt debuggera dla VIMa. Archiwum rozpakowujemy do katalogu ~/.vim/plugin/
  4. Następnie należy zainstalować Xdebug: http://www.xdebug.org/install.php#source. Pobieramy źródła, kompilujemy: phpize ./configureenable-xdebug make Kopiujemy moduł xdebug.so do katalogu który widzi Apach. W php.ini dopisujemy linię: zend_extension=xdebug.so Restartujemy Apacha. Polecenie phpinfo(); powinno przywitać nas informacją o zainstalowanym module Xdebug.
  5. Budujemy plik .htacces dla programu, który chcemy debugować: php_value xdebug.remote_autostart On php_value xdebug.remote_enable On php_value xdebug.remote_handler dbgp php_value xdebug.remote_host localhost php_value xdebug.remote_mode req php_value xdebug.remote_port 9000
  6. Odpalamy VIM, F5, szybko nawigujemy przeglądarką na nasz program i wracamy do VIMa. Przywita nas informacja o nawiązaniu połączenia. Teraz F2 i miodzio.
Ruszam do boju z nowym debuggerem PHP w VIMie. Aktualizacja: 30-maj-2006. Niestety debuger nie radzi sobie z dużymi aplikacjami www.
Categories: PHP, Vim Tags:
  1. onjin
    May 23rd, 2006 at 13:04 | #1

    Działa ładnie.

    W moim przypadku (Gentoo) xdebug włączył się po kombinacji:

    echo ‘dev-php5/xdebug ~x86′ >> /etc/portage/package.keywords
    emerge dev-php5/xdebug
    /etc/init.d/apache2 restart

    Wartościowy wpis, pozdrawiam autora ;)

  1. No trackbacks yet.

Subscribe without commenting