An error occurred while loading the file. Please try again.
-
Côme Chilliet authoredcba55876
<?php
/*----------------------------------------------------------------------
* Title.........: Debug Lib
* Version.......: 0.5.4
* Author........: Thomas Schüßler <tulpe@atomar.de>
* Filename......: debuglib.php(s)
* Last changed..: 16. July 2003
* License.......: Free to use. Postcardware ;)
*
*-----------------------------------------------------------------------
*
* Functions in this library:
*
* print_a( array array [,int mode] )
* prints arrays in a readable, understandable form.
* if mode is defined the function returns the output instead of
* printing it to the browser
*
* show_vars([int mode])
* use this function on the bottom of your script to see all
* superglobals and global variables in your script in a nice
* formated way
*
* show_vars() without parameter shows $_GET, $_POST, $_SESSION,
* $_FILES and all global variables you've defined in your script
*
* show_vars(1) shows $_SERVER and $_ENV in addition
*
* Happy debugging and feel free to email me your comments.
*
* History: (starting with version 0.5.3 at 2003-02-24)
*
* - added tooltips to the td's showing the type of keys and values (thanks Itomic)
* 2003-07-16
* - pre() function now trims trailing tabs
----------------------------------------------------------------------*/
// This file must be the first include on your page.
/* used for tracking of generation-time */
{
$MICROTIME_START = microtime();
@$GLOBALS_initial_count = count($GLOBALS);
}
/*!
* \file functions_debug.inc
* Source code for print_a class
* and helper function
*/
/*!
* \brief print_a class and helper function
* prints out an array in a more readable way
* than print_r()
*
* based on the print_a() function from
* Stephan Pirson (Saibot)
*/
class Print_a_class {
// this can be changed to FALSE if you don't like the fancy string formatting
var $look_for_leading_tabs = TRUE;
var $output;
var $iterations;
var $key_bg_color = '1E32C8';
var $value_bg_color = 'DDDDEE';
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
var $fontsize = '8pt';
var $keyalign = 'center';
var $fontfamily = 'Verdana';
var $export_flag;
var $show_object_vars;
var $export_dumper_path = 'http://tools.www.mdc.xmc.de/print_a_dumper/print_a_dumper.php';
/* i'm still working on the dumper! don't use it now
* put the next line into the print_a_dumper.php file (optional)
* print htmlspecialchars( stripslashes ( $_POST['array'] ) ); */
var $export_hash;
/*!
* \brief Print_a_class constructor
*/
function __construct()
{
$this->export_hash = uniqid('');
}
/*! recursive function!
* if print_a() was called with a fourth parameter (1 or 2)
* and you click on the table a window opens with only the output of print_a() in it
* 1 = serialized array
* 2 = normal print_a() display
*
* put the following code on the page defined with $export_dumper_path;
* --->%---- snip --->%----
* if($_GET['mode'] == 1) {
* print htmlspecialchars( stripslashes ( $_POST['array'] ) );
* } elseif($_GET['mode'] == 2) {
* print_a(unserialize( stripslashes($_POST['array'])) );
* }
* ---%<---- snip ---%<----
*
*
* \param array $array
*
* \param boolean $iteration false
*
* \param boolean $key_bg_colo false
*/
function print_a($array, $iteration = FALSE, $key_bg_color = FALSE)
{
if (!$key_bg_color) {
$key_bg_color = $this->key_bg_color;
}
if (!$iteration && isset($this->export_flag)) {
$this->output .= '<form id="pa_form_'.$this->export_hash.'" action="'.$this->export_dumper_path.'?mode='.$this->export_flag.'" method="post" target="_blank"><input name="array" type="hidden" value="'.htmlspecialchars( serialize( $array ) ).'"></form>';
}
// lighten up the background color for the key td's =)
if ($iteration) {
for ($i = 0; $i < 6; $i += 2) {
$c = substr( $key_bg_color, $i, 2 );
$c = hexdec( $c );
$c += 15;
if ($c > 255) {
$c = 255;
}
if (!isset($tmp_key_bg_color)) {
$tmp_key_bg_color = '';
}
$tmp_key_bg_color .= sprintf( "%02X", $c );
}
$key_bg_color = $tmp_key_bg_color;
}
// build a single table ... may be nested