0

在此处输入图像描述这段代码在执行时会导致巨大的滞后。没有这个位需要 0.78 秒。有代码需要 6.87 秒。有没有人可以指出滞后代码并为我提供消除这种滞后的解决方案。非常感谢您的帮助。

代码

    <?php 
$row=0;
while ($r=$sth->fetch(PDO::FETCH_ASSOC)) {
  $row++;

  foreach($r as $k => $v) { ${$k} = $v; } // get all columns as variables

  //print a table row
  $sql="SELECT items.id i_id, status,manufacturerid,model,label,cpuno,corespercpu from items,item2soft ".
       " where item2soft.itemid=items.id  AND item2soft.softid={$r['id']}";

  $sthi=db_execute($dbh,$sql);
  $ri=$sthi->fetchAll(PDO::FETCH_ASSOC);
  $nitems=count($ri);
  $institems="";
  $licitems=0;

  for ($i=0;$i<$nitems;$i++) {
    $rstatus=(int)$ri[$i]['status'];
    if ($rstatus==1) { $attr="style='background-color:green;font-weight:bold;color:#efefef' title='Status: Stored'"; }
    elseif ($rstatus==2) { $attr="style='background-color:red;font-weight:bold;' title='Status: Defective'"; }
    elseif ($rstatus==3) { $attr="style='background-color:#cecece;font-weight:bold;' title='Status: Obsolete'"; }
    else { $attr=" title='Status: In Use' "; }

    $x=($i+1).": <span $attr >({$ri[$i]['label']}) </span>".$agents2[$ri[$i]['manufacturerid']]['title']." ".$ri[$i]['model'];

    if ($i%2) $bcolor="#D9E3F6";
    //if ($i%2) $bcolor="#ECF1FB";
    else $bcolor="#ffffff";
    $institems.="<div style='margin:0;padding:0;background-color:$bcolor'>".
                "<a href='$scriptname?action=edititem&amp;id={$ri[$i]['i_id']}'>$x</a></div>";

    if (empty($lictype) || $lictype==0) { $licitems++; } //per box
    elseif ($lictype==1) { $licitems+=$ri[$i]['cpuno']; } //per cpu
    elseif ($lictype==2) { $licitems+=$ri[$i]['cpuno']*$ri[$i]['corespercpu']; } //per core
  }

谢谢

4

0 回答 0