Komunikaty błędów w konsoli FireBug’a
Każdy kto robi stronki wie, że FireBug to świetne narzędzie do debagowania.
Prócz błędów kodu JavaScript i swoich komunikatów wyświetlanych np. za pomocą funkcji console.log() w framework’u MooTools, umożliwia też pokazywanie komunikatów z PHP tak by nie psuły one layoutu strony. Do tego potrzebny jest FirePHP.
Po dołączeniu tej klasy do dowolnego skryptu, możemy używać funkcji statycznych takich jak np. FB::log().
Idąc dalej, można połączyć funkcjonalność tej klasy CakePHP.
Najpierw pobierz i zapisz w katalogu vendors/FirePHP skrypt FirePHP.
W tym samym katalogu zapisz ten skrypt: http://bakery.cakephp.org/articles/download_code/796/block/1 pod nazwą FirePHP.debugger.php
W bootstrapie zaimportuj ten skrypt w następujący sposób:
App::import('Vendor', 'FirePHPDebugger', array('file' => 'FirePHP' . DS . 'FirePHP.debugger.php'));
Jeżeli chcesz sprawdzić zawartość jakiejś zmiennej wystarczy teraz użyć funkcji fb(). Można też sprawdzać zawartość całych obiektów dzięki wbudowanemu inspektorowi FireBug’a.
Można także zmienić komponent Email, żeby w trybie debug wystawiać komunikaty nie za pomocą funkcji Session::setFlash tylko fb(). Najlepiej skopiować ten komponent do katalogu z komponentami w APPie, żeby nie zmieniać oryginału. W lini 780 w funkcji __debug() znajduje się kawałek kodu:
$this->Controller->Session->setFlash($fm, 'default', null, 'email');
który wystarczy zmienić na następujący:
fb($fm)
Najlepiej też ustawić właściwość Email::delivery na debug, a wgrywając pliki na serwer, nie dodawać tego komponentu, tylko zostawić oryginał. Dzięki temu można w trybie produkcyjnym mieć możliwość szybkiego sprawdzania wysyłanych wiadomości e-mail, a na produkcyjnym normalnie działający komponent Email.
wtorek, 30 Grudzień 2008

Facebook
GoldenLine
LinkedIn
Interesujacy post, stronka ladna graficznie, jeszcze tu napewno zajrze
pozdro lukkolini