phpDocumentor PHP_Debug
[ class tree: PHP_Debug ] [ index: PHP_Debug ] [ all elements ]

Source for file index.php

Documentation is available at index.php

  1. <?php
  2. /**
  3.  * Created on 18 apr 2006
  4.  *
  5.  * Test script for PHP_Debug2
  6.  * 
  7.  * @package PHP_Debug
  8.  * @filesource
  9.  */
  10.  
  11. error_reporting(E_ALL)// Report all possible errors
  12. //session_start();        // Start session
  13.  
  14. // Get default stylesheet
  15.  
  16. require_once 'Debug.php';
  17. require_once 'Debug/Renderer/HTML_Table_Config.php';
  18. $HTMLoptions Debug_Renderer_HTML_Table_Config::singleton()->getConfig();
  19.  
  20. print('<?xml version="1.0" encoding="UTF-8"?>
  21. <!DOCTYPE html 
  22.      PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  23.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  24. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  25.   <head>
  26.     <title>Pear::PHP_Debug</title>
  27. ');
  28.  
  29. // Get stysheet and print it
  30. print($HTMLoptions['HTML_TABLE_stylesheet'])
  31. ?>
  32.   </head>
  33. <body>
  34. <h1>PEAR::PHP_Debug</h1>
  35. <p>
  36.     <a href="http://validator.w3.org/check?uri=referer"><img
  37.         src="http://www.w3.org/Icons/valid-xhtml10"
  38.         alt="Valid XHTML 1.0 Strict" height="31" width="88" /></a>
  39. </p>
  40.  
  41. <?php
  42.  
  43.  
  44. // Tests variables  ============================================================
  45. // One variable that will be watched by PHP_Debug
  46.  
  47. $watchedVariable 1
  48.  
  49. // One session variable to test the debugtype = PHP_DEBUGLINE_ENV (4)
  50. //$_SESSION['Kikoo'] = "One session variable defined";
  51.  
  52. // Options array for Debug object
  53.  
  54. $options array(
  55.     'DEBUG_restrict_access'      => false,
  56.     'DEBUG_allow_url_access'     => true,
  57.     'DEBUG_url_key'              => 'key',
  58.     'DEBUG_url_pass'             => 'nounou',
  59.     'DEBUG_enable_watch'         => false,
  60.     'DEBUG_replace_errorhandler' => true,
  61.     'DEBUG_lang'                 => 'FR',
  62.     'HTML_TABLE_view_source_script_name' => 'source.php'        
  63. );
  64.  
  65. $allowedip array
  66.     '127.0.0.1'
  67. );
  68.  
  69.  
  70.  
  71. // Debug Object creation =======================================================
  72.  
  73. $Dbg new Debug($options);
  74.  
  75.  
  76. // Test restrictAcess() function, only IP in param array will see the debug ====
  77. //$Dbg->restrictAcess($allowedip);
  78.  
  79.  
  80.  
  81. // Test add() function =========================================================
  82.  
  83. // Standard 
  84.  
  85. $Dbg->add("This is the <b>HTML_Table_Render</b>, client IP is "$_SERVER['REMOTE_ADDR']);
  86.  
  87.  
  88.  
  89. // Test dump() function ========================================================
  90. // dump a variable (integer)
  91.  
  92. $foo 555;
  93. $Dbg->dump($foo"Foo");
  94.  
  95. // dump a variable (double)
  96. $foo2 37.2;
  97. $Dbg->dump($foo2"Foo2");
  98.  
  99. // dump an array
  100. $Dbg->dump($options"Options");
  101.  
  102. // dump an object
  103. $testObject new Debug_Line("info info info inside Debug_Line object");
  104. $Dbg->dump($testObject);
  105.  
  106.  
  107.  
  108. // Test setAction() ============================================================
  109. // Type 12 : Page action : --> Methode publique a creer
  110.  
  111. $action 'view_debug_test_action';
  112. $Dbg->setAction($action);
  113. // Test watch() function, watched var is 'watchedVariable' =====================
  114. // /!\ Be carefull the tick directive does not work under windows /!\
  115. // and make apache crash. To test under unix, remove comments bellow and
  116. // corresponding brace line 152 
  117.   
  118. //declare (ticks = 1) 
  119. //{
  120. // Watch the variable called 'watchedVariable' 
  121. //$Dbg->watch("watchedVariable");
  122.  
  123.  
  124.  
  125. // Stress backtrace function (check line, file, function, class results) =======
  126.  
  127.     
  128.  
  129.     function a()
  130.     {
  131.         global $Dbg,$watchedVariable;
  132.         $Dbg->addDebug("call from a() fonction");
  133.         $Dbg->stopTimer();
  134.     
  135.         $watchedVariable 501;
  136.         
  137.         b();
  138.     }
  139.     
  140.     function b()
  141.     {
  142.         global $Dbg$watchedVariable;
  143.         $Dbg->add("call from b() fonction");
  144.     
  145.         $watchedVariable 502;
  146.     }
  147.  
  148.     a();
  149.     
  150.     $Dbg->addDebugFirst("call after b() and a() but adding in 1st");
  151.     
  152.     $watchedVariable 555;
  153.     
  154.     $watchedVariable 'converting from INT to STR';
  155.  
  156. // } // End of declare {ticks=n}  block
  157. // Test the add() function with the timer ======================================
  158.  
  159.  
  160.  
  161. $Dbg->add("PERF TEST : 10000 iteration");
  162.  
  163. $y 0;
  164. for ($index 0$index 10000$index++
  165. {
  166.     $y $y $index;
  167. }
  168. $Dbg->stopTimer();
  169.  
  170.  
  171. // Test the query() function ===================================================
  172.  
  173. $Dbg->query("SELECT * FROM PHPDEBUG_USERS");
  174.  
  175. $y 0;
  176. for ($index 0$index 5000$index++
  177. {
  178.     $y $y $index;
  179. }
  180. $Dbg->stopTimer();
  181.  
  182.  
  183.  
  184. // Test custom error handler ===================================================
  185.  
  186. echo $notset;                      // Will raise a PHP notice
  187. fopen('not existing!''r');       // Will raise a PHP warning
  188. trigger_error('This is a custom application error !!'E_USER_ERROR);
  189.                                    // Will raise a custom user error
  190. $Dbg->error('Bad status of var x in application PHP_Debug');
  191.                                    // Will add an application error
  192. // Display Debug information (HTML_Table renderer) =============================
  193.  
  194.  
  195.  
  196. $Dbg->display();
  197.  
  198.  
  199. // Test __toString(), dumpVar() functions and structure of Debug object ========
  200. //echo $Dbg;
  201.  
  202.  
  203. // Display source code =========================================================
  204.  
  205. //print('<pre>');
  206.  
  207.  
  208.  
  209. foreach ($Dbg->getRequiredFiles(as $lvalue)
  210. {
  211.     print("<h1>$lvalue</h1>");
  212.     print("<div>");
  213.     highlight_file($lvalue);
  214.     print("</div>");
  215. }
  216.  
  217. // END =========================================================================
  218. ?>
  219.  
  220. </body>
  221. </html>

Documentation generated on Thu, 07 Sep 2006 00:36:35 +0200 by phpDocumentor 1.3.0