Advertisement
Shivorn

preparevspdo

Jun 21st, 2016
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.48 KB | None | 0 0
  1. <?php
  2.  
  3.     $host='localhost';
  4.     $dbname='test';
  5.     $username='root';  
  6.     $password='';
  7.    
  8.     $db = new PDO('mysql:host='.$host.';dbname='.$dbname,$username,$password);
  9.     $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
  10.  
  11.     function edit($db,$sql,$data = null)
  12.     {
  13.         $req = $db->prepare($sql);
  14.         $req->execute($data);
  15.         $req->closeCursor();               
  16.     }
  17.  
  18.     function read($db,$sql,$data = null)
  19.     {
  20.         $req = $db->prepare($sql);
  21.         $req->execute($data);
  22.         $data = $req->fetchAll(PDO::FETCH_ASSOC);
  23.         $req->closeCursor();            
  24.         return $data;                
  25.     }
  26.  
  27.  
  28.     $sql = "CREATE TABLE IF NOT EXISTS `jeux_video` (
  29.     `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
  30.     `nom` varchar(255) NOT NULL,
  31.     `possesseur` varchar(255) NOT NULL,
  32.     `console` varchar(255) NOT NULL,
  33.     `prix` double NOT NULL DEFAULT '0',
  34.     `nbre_joueurs_max` int(11) NOT NULL DEFAULT '0',
  35.     `commentaires` text NOT NULL,
  36.     KEY `ID` (`ID`)
  37.     )";
  38.  
  39.     edit($db,$sql);
  40.  
  41.     $sql = 'select * from jeux_video';
  42.     $games = read($db,$sql);
  43.  
  44.     if(empty($games)){
  45.  
  46.         for ($i=0; $i < 1000; $i++) {
  47.  
  48.             $sql = 'INSERT INTO jeux_video
  49.             (nom,possesseur,console)
  50.             VALUES (:nom,:possesseur,:console)';
  51.             $data_ex =  array(
  52.             ':nom' => 'jeux '.$i,
  53.             ':possesseur' => 'possesseur '.$i,
  54.             ':console' => 'console'.$i
  55.             );
  56.  
  57.             edit($db,$sql,$data_ex);
  58.  
  59.         }
  60.     }
  61.  
  62.  
  63.     /* -------------- Methode 1 Prepare --------------------*/
  64.    
  65.     microtime(true);
  66.     $t0_methode1 = microtime();
  67.     $sql = 'select * from jeux_video';
  68.     $results = read($db,$sql);
  69.  
  70.     foreach ($results as $result) {
  71.         echo $result['nom'].'-';
  72.         echo $result['possesseur'].'-';
  73.         echo $result['console'].'|>';
  74.     }
  75.  
  76.     $t1_methode1 = microtime();
  77.  
  78.     $temps_methode_1 = $t1_methode1 - $t0_methode1;
  79.  
  80.     $temps_methode_1 = number_format($temps_methode_1, 6);
  81.  
  82.     echo '<h2> Temps 1ere methode  : '.$temps_methode_1.'</h2>';
  83.  
  84.  
  85.  
  86.     /* --------------- Methode 2 Query -------------------------*/
  87.  
  88.  
  89.         microtime(true);
  90.     $t0_methode2 = microtime();
  91.     $sql = 'select * from jeux_video';
  92.  
  93.     $results = $db->query($sql)->fetchAll(PDO::FETCH_ASSOC);
  94.  
  95.     foreach ($results as $result) {
  96.         echo $result['nom'].'-';
  97.         echo $result['possesseur'].'-';
  98.         echo $result['console'].'|>';
  99.     }
  100.  
  101.     $t1_methode2 = microtime();
  102.  
  103.     $temps_methode_2 = $t1_methode2 - $t0_methode2;
  104.  
  105.     $temps_methode_2 = number_format($temps_methode_2, 6);
  106.  
  107.     echo '<h2> Temps 2eme methode  : '.$temps_methode_2.'</h2>';
  108.  
  109.  
  110.  
  111.  
  112. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement