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).
Outils personnels