A moins d'utiliser un débuggeur PHP, une bonne partie du débuggage d'un site en PHP - et donc d'un site Drupal - consiste à afficher le contenu de certaines variables grâce aux instructions print ou echo.
Avec Drupal, nous pouvons nous faciliter la tâche grâce à une petite fonction de debug bien pratique :
<?php
function debug_print($var) {
drupal_set_message('<pre>'. print_r($var, TRUE) .'</pre>');
}
?>
Si vous avez créé un module, vous pouvez copier/coller cette fonction dans le code de votre module, ou sinon, dans le fichier template.php de votre thème, elle sera ensuite accessible partout.
Cette fonction permet :
Cette fonction est plus élégante car elle garantit l'affichage de la variable toujours en haut de page, à un endroit qui n'explosera votre code HTML.
De plus, les messages affichés avec drupal_set_message() sont stockés dans une variable de session jusqu'à ce qu'il soit affichés. Ainsi, si votre script plante, vous verrez quand même le ou les messages passés à drupal_set_message() lors de sa prochaine exécution.