Krumo : var_dump et print_r amélioré

Krumo : var_dump et print_r amélioré

Krumo est une bibliothèque PHP qui remplace avantageusement les fonctions PHP print_r() et var_dump(). Krumo est un outil débogage puissant pour PHP 5.

Beaucoup de développeur utilise les fonctions print_r() et var_dump() comme outil de débogage. Mais, la sortie faite par ces fonctions n'est pas toujours lisible surtout lorsque la variable à afficher contient beaucoup de données. Krumo est une alternative crédible qui ravira les développeurs qui pourront naviguer dans la données beaucoup facilement via un composant Web utilisant HTML, CSS et Javascript. Les utilisateurs de Drupal sont habitués à cette outil car il est totalement intégré à ce CMS.

Par exemple, une sortie faite Krumo pour les tableaux $_SERVER et $_ENV.

Krumo propose d'autre outil de debug.

// print a debug backgrace
krumo::backtrace();

// print all the included (or required) files
krumo::includes();

// print all the included functions
krumo::functions();

// print all the declared classes
krumo::classes();

// print all the defined constants
krumo::defines();

Krumo : le remplacent pour var_dump et print_r

Commentaires

syndrael

Sinon pour info, Krumo existe depuis super longtemps.. plusieurs années.. LOL !! mais toujours bien de le remettre en avant. FirePHP est pas trop mal, il en faut pour tous les gouts. S.

syndrael

Long débat que le debugging sur PHP.. On retrouve des populations différentes.. ceux qui pourraient coder au Notepad avec du var_dump de partout et d'autre (entre autres) qui ne jurent que par Eclipse, XDebug, un gestionnaire de version (au cas ou il faudrait faire machine arrière etc..). Le débat est très intéressant mais je pense ces populations irréconciliables..LOL !! Je reconnais faire parti des 2.. mon propre code est débuggé, versionné et centralisé sur Eclipse.. et chez mes clients c'est presque du Notepad++ à 85%.. sinon du ZendStudio en mode édition de texte (ahh non, pas de fonctionnalités avancées.. LOL !!!)

truffo

Sur Firebug, c'est une question de goûts et d'habitude. Je suis beaucoup plus à l'aise avec l'inspecteur de code de Chrome. Au final, j'ai un chrome et un chromium. On peut activer l'affichage le faire via les méthodes statiques disable et enable.
 // disable Krumo
 krumo::disable();

 // Krumo is disabled, nothing is printed
 krumo::includes();

 // enable Krumo
 krumo::enable();

 // Krumo is enable, printing is OK
 krumo::classes();
Après, c'est un outil que je trouve plutôt sympa quand je développe sous Drupal. On peut facilement l'utiliser ailleurs, alors pourquoi s'en priver. Je te rejoint sur le fait que sur le débuggage c'est l'un des points où PHP pèche le plus.

Julien L

A mon gout, pour développer il n'y a pas mieux que Firebug. Pour surfer il y a mieux que Firefox, là je suis d'accord. Et pour l'erreur de prod, suffit de faire les choses proprement et de ne pas faire un echo/firephp->debug à l'arrache, mais comme ça devrait être fait : encapsulé dans une classe de log qui vérifie l'ip/le virtualhost/la config avant d'écrire des infos à l'écran

truffo

C'est qu'un débogueur de code plus performant serait bien. FirePHP je suis pas trop fan, cela nécessite d'utiliser Firefox et franchement pour développer y a mieux (mode troll). Ensuite, c'est le truc que l'on oublie pendant le passage en prod parce que ça se voit pas.

Julien L

A mon humble avis, ils feraient mieux de mettre leurs efforts pour développer un débogueur de code plus performant en PHP, comme ceux que l'on retrouve en C#/Java (Points d'arrêts sur ligne/méthode/classe/champs/exception, points d'arrêts conditionnels, pas à pas, modification du code à chaud, inspection des objets, évaluation des expressions en temps réel ...) Et surtout qui fonctionne bien sans passer 2h à le configurer, et qui plante une fois sur deux (Je ne vise pas Xdebug du tout ...) Peut être que comme ça, on ne retrouvera plus des echo/exit/die/print_r/var_dump partout dans le code ^^ Sinon il existe FirePHP qui permet de logger des messages/objets dans la console Firebug, ce qui a l'avantage de ne pas polluer la page.

Ajouter un commentaire

Plain text

  • Aucune balise HTML autorisée.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.
By submitting this form, you accept the Mollom privacy policy.