Visa ett inlägg
Oläst 2011-03-18, 17:59 #2
pelmereds avatar
pelmered pelmered är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2010
Inlägg: 1 342
pelmered pelmered är inte uppkopplad
Har WN som tidsfördriv
pelmereds avatar
 
Reg.datum: May 2010
Inlägg: 1 342
De som vill bidra får gärna skriva egna testfunktioner på saker som ska testas.

Gör funktionerna enligt följande exempel:
PHP-kod:
function func_insert()
{
   global 
$dbl$dbName$tableName$numIter$randStrArr;
   
   
//Timer Start
   
$st microtime();    
   
   
//Perform test - INSERT
   
for ($i 0$i $numIter$i++)
   {
      
mysqli_query($dbl"INSERT INTO `$dbName`.`$tableName` (`id` ,`testcolumn`)VALUES ($i , '".$randStrArr[$i]['s']."' )");
   }
   
//test end

   //Get time and return exec time
   
return getTime($st);
}

function 
func_insert_pdo()
{
   global 
$dbh$dbName$tableName$numIter$randStrArr;
   
   
//Prepare test
   
$insertStmt$dbh->prepare("INSERT INTO results ( `id` ,`testcolumn` ) VALUES( :id, :teststr)");
   
   
//Timer Start
   
$st microtime();
   
   
//Perform test - INSERT PDO
   
for ($i 0$i $numIter$i++) {
      
$insertStmt->bindParam(':id'$iPDO::PARAM_INT);
      
$insertStmt->bindParam(':teststr'$randStrArr[$i]['s'], PDO::PARAM_STR$randStrArr[$i]['l']);

      
$insertStmt->execute( );
   }
   
//test end
    
    //Get time and return exec time
   
return getTime($st);

Kommentarer:
$dbl = Databasanslutning med MySQLi - http://php.net/manual/en/book.mysqli.php
$dbh = Databasanslutning med PDO - http://php.net/manual/en/book.pdo.php
$dbName = Databasnamn
$tableName = Testtabellnamn
$numIter = Antal iterationer (1000 kommer det nog vara, men vill ha möjligheten att ändra detta)
$randStrArr = En array med slumpade sängar och längden på dessa. Strängarna är siffror samt stora och små bokstäver med en slumpad längd mellan 5 och 15 tecken. Strängens längd finns också med i arrayen om man vill använda den. Antalet är givetvis lika många som antalet iterationer.
Arrayen är på följande form:
PHP-kod:
Array
(
    [
0] => Array
        (
            [
s] => 49MmVEQpabk
            
[l] => 11
        
)

    [
1] => Array
        (
            [
s] => Mex1IJoruZWVF
            
[l] => 13
        
)

    [
2] => Array
        (
            [
s] => dPvgE8KT3eOGYwR
            
[l] => 15
        
)

    [
3] => Array
        (
            [
s] => TmABc
            
[l] => 5
        
)
....
    [
999] => Array
        (
            [
s] => 2WQvegSDsh
            
[l] => 10
        
)


Några kommentarer på det upplägget?
pelmered är inte uppkopplad   Svara med citatSvara med citat