Your SlideShare is downloading. ×
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
Xdebug: Seus problemas acabaram!
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

Xdebug: Seus problemas acabaram!

1,027

Published on

Você leva horas, dias para encontrar um bug? Não conhece o framework que trabalha ou leva dias encontrando como implementar algo? Seus problemas acabaram! Aprenda a debugar suas aplicações com Xdebug!

Você leva horas, dias para encontrar um bug? Não conhece o framework que trabalha ou leva dias encontrando como implementar algo? Seus problemas acabaram! Aprenda a debugar suas aplicações com Xdebug!

0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,027
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
9
Comments
0
Likes
5
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. Seus problemas acabaram!
  • 2. !=Por uma vida mais saudável
  • 3. O Xdebug é uma extensão que te ajuda a depurar seus scripts fornecendo uma grande quantidade de informações valiosas.
  • 4. Falaremos sobre:● Instalação● Variáveis amigáveis● Xdebug na linha de comando● Removendo pogs● Depurando em tempo real● profiling
  • 5. Instalação:sudo apt-get install php5 php5-dev gitgit clone git://github.com/derickr/xdebug.gitcd xdebugphpize./configure --enable-xdebugmakesudo make installsudo service apache2 restart
  • 6. Variáveis bonitinhas: Como configurar: xdebug.default_enable=on xdebug.overload_var_dump = 0 No php.ini: html_errors=On Também funciona no CLI: xdebug.cli_color=1
  • 7. POG do desesperoO PHP oculta erros com o operador @E o Xdebug re-exibe:xdebug.scream=1 # ignora o @ xdebug.file_link_format=gvim://%f@%1 xdebug.file_link_format=txmt://open/?url=file://%f&line=1 xdebug.file_link_format=???://%f?%1 OPS DO DESESPERO: USE O MANUAL!!! http://php.net/manual/en/language.operators.errorcontrol.php http://xdebug.org/docs/stack_trace
  • 8. Imprimindo variáveis amigáveis<?phpini_set( xdebug.var_display_max_data, 25 );ini_set( xdebug.var_display_max_children, 32 );ini_set( xdebug.var_display_max_depth, 4 ); OPS DO DESESPERO: USE O MANUAL!!! http://xdebug.org/docs/display
  • 9. Exemplo de funções: Gravando headers<?phpsession_start();setcookie( key, value, time() + 86400 );header( "Status: 403" );var_dump( xdebug_get_headers() );OPS DO DESESPERO:USE O MANUAL!!!http://xdebug.org/docs/display
  • 10. Depuração em tempo real: kill bugs
  • 11. Depuração em tempo real: kill bugs xdebug.remote_enable=on xdebug.remote_autostart=on xdebug.remote_port=9000 Ou, use TDD – PHP Unit
  • 12. Clients:● Eclipse● Netbeans● Vi● Sublime● Notepad++● M$ Visual Studio● ... DESESPERO - RTFM: http://pt.wikipedia.org/wiki/RTFM http://xdebug.org/docs/remote#clients
  • 13. Profilingxdebug.profiler_enable=1 ; enable profilerxdebug.profiler_output_name=cachegrind.out.%u.%s.%R output_name ● Analisar quantidade de chamadas ● Tempo total por função ● Partes do código mais lentas ● Descubra onde otimizar
  • 14. Profiling● Webgrind● KcacheGrind● WinCacheGrind● …..?
  • 15. Profiling Mão na massa
  • 16. Contribua com o manual ● Conhecer o PHP mais a fundo ● Documentação em inglês ● Tradução da documentação para o portuguêsComo?Procure o Klaus nos corredores!!
  • 17. O culpado: http://derickrethans.nl/
  • 18. FIME viveram felizes para sempre
  • 19. Links - Contato <?php function romans10_9(){ <?php if($jesus == Lord) function romans10_9(){ $you = saved; if($jesus == Lord) else $you = saved; $you = lost; else return $you;<?php $you = lost; return $you; } ?>echo " } ?> <?phpVitor Mattos <?php function romans10_9(){ if($jesus == Lord) function romans10_9(){ $you = saved; else if($jesus == Lord) $you = lost; $you = saved;http://www.slideshare.net/vitormattosrj } ?> return $you; elsevitor.mattos@phprio.org $you = lost; <?php return $you;vitor@agregati.com.br function romans10_9(){ } ?>"; if($jesus == Lord)?> $you = saved; else <?php function romans10_9(){ $you = lost; if($jesus == Lord) $you = saved; else return $you; $you = lost; return $you; } } ?> ?>

×