Czy można napisać ciąg znaków lub zalogować się do konsoli?
Tak jak w JSP, jeśli wydrukujemy coś w stylu system.out.println("some")
, to będzie to w konsoli, a nie na stronie.
Możesz też użyć sztuczki z PHP Debug to console.
Najpierw potrzebujesz małej funkcji pomocniczej PHP
function debug_to_console($data) {
$output = $data;
if (is_array($output))
$output = implode(',', $output);
echo "<script>console.log('Debug Objects: " . $output . "' );</script>";
}
Następnie możesz jej użyć w ten sposób:
debug_to_console("Test");
Spowoduje to utworzenie danych wyjściowych jak poniżej:
Debug Objects: Test
Firefox
W Firefoksie możesz użyć rozszerzenia o nazwie FirePHP, które umożliwia logowanie i wyrzucanie informacji z twoich aplikacji PHP do konsoli. Jest to dodatek do wspaniałego rozszerzenia do tworzenia stron internetowych Firebug.
Tłumaczenie i przypisy Chrome
Jeśli jednak używasz Chrome, istnieje narzędzie do debugowania PHP o nazwie Chrome Logger lub webug (webug ma problemy z kolejnością logów).
Od niedawna rozwijany jest program Clockwork, który rozszerza Narzędzia dla programistów o nowy panel dostarczający użytecznych informacji o debugowaniu i profilowaniu. Zapewnia on wsparcie dla Laravel 4 i Slim 2, a wsparcie może być dodane poprzez rozszerzalne API.
Używanie Xdebug
Lepszym sposobem na debugowanie PHP jest użycie Xdebug. Większość przeglądarek udostępnia rozszerzenia pomocnicze, które pomagają przekazać wymagane pliki cookie/łańcuchy zapytań, aby zainicjować proces debugowania.
Domyślnie, wszystkie dane wyjściowe trafiają do stdout
, co jest odpowiedzią HTTP lub konsoli, w zależności od tego czy skrypt jest uruchamiany przez Apache czy ręcznie z linii poleceń. Możesz jednak użyć error_log
do logowania, a różne strumienie I/O mogą być zapisywane za pomocą fwrite
.