Utiliser Advanced PHP Debuggeur
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 |
Installation et utilisation
Je ne vais pas recopier ce qui est déjà écrit, tout est là
Plus d'information
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
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).