Utiliser Advanced PHP Debuggeur
Un article de LodelWiki.
Il peut être très intéressant d'utiliser ce débuggeur PHP qui est une petite mine d'or d'information sur l'execution d'un script.
Sommaire |
[modifier] Installation et utilisation
Je ne vais pas recopier ce qui est déjà écrit, tout est là
[modifier] Plus d'information
[modifier] Exemple de trace
Je mets ici un exemple de trace afin de bien se rendre compte des informations données :
Trace for [...]/lodeldevel/lodel/src/lodel/edition/index.php Total Elapsed Time = 1.79 Total System Time = 0.16 Total User Time = 1.02 Real User System secs/ cumm %Time (excl/cumm) (excl/cumm) (excl/cumm) Calls call s/call Memory Usage Name -------------------------------------------------------------------------------------- 97.8 0.00 1.75 0.00 0.98 0.00 0.16 1 0.0000 1.7500 -40 view->_calculatecacheandoutput 97.8 0.00 1.75 0.00 0.98 0.00 0.16 1 0.0000 1.7500 -344 view->rendercached 97.8 0.00 1.75 0.00 0.98 0.00 0.16 1 0.0000 1.7500 -26480 view->render 65.9 0.00 1.18 0.00 0.98 0.00 0.16 2 0.0000 0.5900 -16 calcul_page 48.6 0.00 0.87 0.00 0.71 0.00 0.14 2 0.0000 0.4350 -32 lodelparser->parse 39.1 0.00 0.70 0.00 0.50 0.00 0.16 7 0.0000 0.1000 -30296 require 38.0 0.01 0.68 0.01 0.66 0.00 0.00 290 0.0000 0.0023 -74416 lodelparser->parse_main 31.8 0.57 0.57 0.00 0.00 0.00 0.00 1 0.5700 0.5700 0 flush 31.3 0.00 0.56 0.00 0.54 0.00 0.00 55 0.0000 0.0102 -12992 lodelparser->parse_loop 25.1 0.00 0.45 0.00 0.43 0.00 0.00 89 0.0000 0.0051 -1544 lodelparser->parse_if 17.9 0.00 0.32 0.00 0.32 0.00 0.00 38 0.0000 0.0084 -1680 lodelparser->decode_loop_content 15.6 0.00 0.28 0.00 0.14 0.00 0.14 65 0.0000 0.0043 -1016 lodelparser->_split_file 14.5 0.00 0.26 0.00 0.24 0.00 0.00 55 0.0000 0.0047 -5848 lodelparser->parse_loop_extra 14.5 0.00 0.26 0.00 0.12 0.00 0.14 853 0.0000 0.0003 -20704 lodelparser->parse_variable 10.1 0.18 0.18 0.04 0.04 0.14 0.14 810 0.0002 0.0002 -142232 strlen 10.1 0.01 0.18 0.01 0.18 0.00 0.00 64 0.0002 0.0028 -12600 lodelparser->parse_macro 7.8 0.14 0.14 0.14 0.14 0.00 0.00 3388 0.0000 0.0000 33304 preg_match 6.7 0.00 0.12 0.00 0.10 0.00 0.00 43 0.0000 0.0028 0 adodb_mysql->metacolumns 6.7 0.00 0.12 0.00 0.10 0.00 0.00 1 0.0000 0.1200 -24 maketablefields 6.1 0.11 0.11 0.11 0.11 0.00 0.00 4122 0.0000 0.0000 -38872 strpos
[modifier] Commandes utiles
Je place ici quelques commandes utiles :
* pprofp -cmT <matrace> permet d'afficher l'arbre des fonctions appelés avec le temps d'execution et la mémoire
* pproff2calltree -f <matrace> permet de générer un fichier utilisable sous KCacheGrind (visualiseur de trace).

