utknięcie podczas kodowania i testowania od razu zdarza się każdemu programiście, czasami przeglądanie dzienników nie wystarczy, aby szybko naprawić rzeczy, to wtedy korzystanie z debuggera staje się naprawdę pomocne.
zamierzamy zintegrować XDebug w naszej konfiguracji NetBeans, abyśmy mogli debugować projekty Php 7.
oto konfiguracja, nad którą będę pracował :
- zdalny serwer sieci Web przy użyciu Php7 i Apache 2
- projekt Zend 3
- maszyna lokalna przy użyciu Netbeans 8.2
- ustawienia SFTP są poprawnie skonfigurowane do przesyłania plików na serwer przy zapisie
jeśli chcesz zainstalować NetBeans, wykonaj następujące czynności opis : instalacja NetBeans.
lokalna maszyna działa w systemie Windows, ale nie ma to wpływu na procedurę, jeśli jesteś na Linuksie lub Macu, ponieważ serwer znajduje się na zdalnym komputerze.
zacznij od XDebug
najpierw zainstalujmy debugger :
# apt-get install php-xdebug
następnie włącz rozszerzenie :
# phpenmod xdebug
teraz sprawdź plik w /etc/php/7.0/mods-available/xdebug.ini I następujące linie do niego :
zend_extension=xdebug.soxdebug.idekey=netbeans-xdebugxdebug.remote_enable= Onxdebug.remote_handler=dbgpxdebug.remote_mode=reqxdebug.remote_host=888.888.888.888xdebug.remote_port=9000
Zastąp 888.888.888.888 swoim lokalnym IP (IP, z którego korzystasz z NetBeans IDE).
Uruchom ponownie serwer Php i powinieneś to zobaczyć :
widzisz komunikat ostrzegawczy ? Oczywiście ma to wpływ na wydajność witryny, więc nigdy nie osiągaj tego na serwerze produkcyjnym, lepiej używaj go za pomocą maszyny Wirtualnej lub na serwerze lokalnym.
zweryfikuj konfigurację php za pomocą następującego polecenia:
# php-i | grep xdebug
na twojej lokalnej maszynie z uruchomionym NetBeans powinieneś zezwolić na port 9000, a jeśli masz router musisz przekierować port na maszynę lokalną lub Netbeans nie będzie w stanie połączyć się z serwerem.
korzystanie ze zdalnego serwera wymaga mapowania ścieżek w konfiguracji NetBeans Advanced Web :
- kliknij prawym przyciskiem myszy nazwę projektu po lewej stronie i kliknij Właściwości
spróbuj dopasować ścieżki lokalne i zdalne i kliknij OK.
jeśli uruchomisz debugger z NetBeans teraz (CTRL-F5), który powinien działać, zobaczymy teraz jak możemy przetestować go z domyślną aplikacją Zend 3.
test XDebug
aby uzyskać szczegółowe informacje na temat narzędzi do debugowania w IDE, sprawdź następujący adres url.
jeśli chcesz wykonać tylko szybki test, skonfiguruj jeden lub więcej punktów przerwania w plikach projektu, na przykład w kontrolerze indexController.php aplikacji Zend 3 w linii 17.
- Uruchom Debugger
- strona zatrzymuje się w punkcie przerwania, zobacz poniższy zrzut ekranu :
Przeglądaj karty każdej konsoli, aby zapoznać się z nimi i przeprowadzić dalsze testy, dodając więcej punktów przerwania !
w dowolnym momencie, jeśli chcesz wyłączyć debugowanie Php, wydaj polecenie :
# phpdismod xdebug
cóż, wszyscy jesteśmy teraz dobrzy, w następnym tutorialu przejrzymy wykorzystanie PhpUnit wraz z NetBeans i Xdebug tool, omówimy również KCacheGrind do profilowania naszego kodu Php.
nie zapomnij śledzić nas w mediach społecznościowych, aby uzyskać aktualne informacje.