Your SlideShare is downloading. ×
0
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
sfWebDebugToolbarを拡張してみる
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

sfWebDebugToolbarを 拡張してみる

969

Published on

symfony勉強会/懇親会発表資料 …

symfony勉強会/懇親会発表資料
「sfWebDebugToolbarを 拡張してみる」

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
969
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. sfWebDebugToolbarを 拡張してみる symfony勉強会/懇親会 OGAWA Katsuhiro a.k.a. fivestar 1
  • 2. 自己紹介 • HN: fivestar • 名前: 小川雄大(OGAWA Katsuhiro) • 所属: アシアル株式会社 http://d.hatena.ne.jp/Fivestar/ http://wassr.jp/user/fivestar 2
  • 3. アジェンダ • sfWebDebugToolbarの内部 • sfWebDebugToolbarの拡張方法 • 拡張実践 3
  • 4. sfWebDebugToolbarの 内部 4
  • 5. sfWebDebugToolbar • Symfoniansお馴染みの開発ツール • symfonyやPHPの設定、ログの確認など 5
  • 6. symfony 1.2 で変わったこと • それぞれのパネルがクラス化 – sfWebDebugPanel • sfWebDebugPanelSymfonyVersion • sfWebDebugPanelConfig • sfWebDebugPanelLogs • などなど • 拡張が容易に 6
  • 7. sfWebDebugPanel • getTitle() – Toolbarに表示されるHTML • getPanelContent() – クリックされた時に表示されるHTML • getPanelTitle() – クリックされた時に表示されるHTMLのタイト ル 7
  • 8. sfWebDebugPanelTimer • 処理にかかった時間を計測し表示 8
  • 9. sfTimerManager • getTimer($name) – sfTimerの取得 • なければ作成し、自動的に計測を開始 – $name => Panelのtype – sfTimerManager::getTimer(‘Database (Doctrine)’) 9
  • 10. sfTimer • addTime() – sfTimerManager::getTimer()を最初に実行してか らの経過時間を記録 – 呼び出された回数 => Panelのcalls 10
  • 11. sfTimerの追加 • 計測を開始したいタイミングで sfTimerManager::getTimer($name)を実行 • 後は経過時間を記録したいタイミングで sfTimerManager::getTimer($name) ->addTime() を実行 • 上記を任意の場所に記述しておけばOK 11
  • 12. sfWebDebugToolbarの 拡張方法 12
  • 13. パネルの拡張 • 基本的なことはThe symfony Cookbookに – 日本語翻訳済み • 上記とほぼ同じ内容です 13
  • 14. パネルの拡張 • sfEventDispatcherを使用 – $this->dispatcher->connect( 'debug.web.load_panels', array($this, 'configureWebDebugToolbar')) • Configurationクラスのconfigure()に上記を 記述すると、configureWebDebugToolbar() で拡張が可能に 14
  • 15. パネルの拡張 • configureWebDebugToolbar(sfEvent $event) – $event->getSubject() • sfWebDebugオブジェクトを取得 – このメソッド名は任意 • 変更する場合はdispatcher->connectの引数も変更 15
  • 16. sfWebDebug • setPanel($name, sfWebDebugPanel $panel) – パネルを追加/変更 – $webDebug->setPanel(‘assets’, new sfWebDebugPanelAssets($webDebug)) • removePanel($name) – パネルを削除 – $webDebug->removePanel(‘assets’) 16
  • 17. 拡張実践 17
  • 18. ご清聴ありがとうございました End

×