Guest User

Untitled

a guest
Dec 10th, 2012
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.44 KB | None | 0 0
  1. <?php
  2.  
  3. ini_set("display_errors", "stdout");
  4. error_reporting(E_ALL);
  5.  
  6. function test_isset(&$arr)
  7. {
  8.     $sum = 0;
  9.     for ($i = 0; $i < 10000; $i++)
  10.     {
  11.         if (!isset($arr["blah" . $i]))
  12.         {
  13.             $sum++;
  14.         }
  15.     }
  16.    
  17.     return $sum;
  18. }
  19.  
  20. function benchmark_isset($num)
  21. {
  22.     $start = microtime(true);
  23.    
  24.     $arr = array();
  25.     for ($i = 0; $i < $num; $i++)
  26.     {
  27.         $arr[] = $i;
  28.     }
  29.    
  30.     $sum = test_isset($arr);
  31.    
  32.     $elapsed = microtime(true) - $start;
  33.     echo "isset size " . $num . " time " . $elapsed . "<br>";
  34. }
  35.  
  36. benchmark_isset(0);
  37. benchmark_isset(10);
  38. benchmark_isset(100);
  39. benchmark_isset(1000);
  40. benchmark_isset(10000);
  41.  
  42.  
  43. function test_array_key_exists(&$arr)
  44. {
  45.     $sum = 0;
  46.     for ($i = 0; $i < 10000; $i++)
  47.     {
  48.         if (!array_key_exists("blah" . $i, $arr))
  49.         {
  50.             $sum++;
  51.         }
  52.     }
  53.    
  54.     return $sum;
  55. }
  56.  
  57. function benchmark_array_key_exists($num)
  58. {
  59.     $start = microtime(true);
  60.    
  61.     $arr = array();
  62.     for ($i = 0; $i < $num; $i++)
  63.     {
  64.         $arr[] = $i;
  65.     }
  66.    
  67.     $sum = test_array_key_exists($arr);
  68.    
  69.     $elapsed = microtime(true) - $start;
  70.     echo "array_key_exists size " . $num . " time " . $elapsed . "<br>";
  71. }
  72.  
  73. benchmark_array_key_exists(0);
  74. benchmark_array_key_exists(10);
  75. benchmark_array_key_exists(100);
  76. benchmark_array_key_exists(1000);
  77. benchmark_array_key_exists(10000);
  78.  
  79. ?>
Advertisement
Add Comment
Please, Sign In to add comment