Petite fonction PHP pour afficher la description détaillée d'une exception. Contrairement à la fonction standard, elle ne tronque pas les arguments, ce qui est quand même plus pratique.
function displayException(Exception $e) { echo '<pre>'; echo "Caught exception:\n\n " . get_class($e) . "\n\n"; echo "Message:\n\n " . $e->getMessage() . "\n\n"; echo "Trace:\n\n"; $trace = $e->getTrace(); foreach ($trace as $index => $item) { echo " #$index {$item['file']}({$item['line']}): "; if (isset($item['class'])) { echo "{$item['class']}->{$item['function']}"; } else { echo $item['function']; } echo '('; $argsAsText = array(); foreach ($item['args'] as $arg) { switch (gettype($arg)) { case 'array': $argsAsText[] = str_replace("\n", '', print_r($arg, true)); break; case 'string': $argsAsText[] = '"' . $arg . '"'; break; default: $argsAsText[] = $arg; break; } } echo implode(', ', $argsAsText), ");\n"; } if (count($_POST) > 0) { echo "\nPOST:\n\n " . str_replace("\n", "\n ", print_r($_POST, true)); } if (isset($_SESSION)) { echo "\nSESSION:\n\n " . str_replace("\n", "\n ", print_r($_SESSION, true)); } exit(); }
Aucun commentaire:
Enregistrer un commentaire