• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

【求点评】生成缓存的一段代码,大家觉得有什么不足之处?代码风格方面

php 搞代码 4年前 (2022-01-23) 13次浏览 已收录 0个评论

写了一段生成缓存的函数,大家觉得有什么不足之处?
代码的写的方式和风格方面,求评价

//cacheidfunction MakeThreeCache($ID){  $idArr = array(  'DIQU'    =>  array('id', 'name', '/cacheDiqu',   3,1,'中国','/1.php',"SELECT * FROM gk_common_diqu WHERE `level`=%d AND upid='%d' "),  'INFOCAT' =>  array('id', 'name', '/cacheInfocat',3,0,'大分类','/0.php',"SELECT * FROM gk_info_cat WHERE `level`=%d <div style="color:transparent">本&文来源gaodai^.ma#com搞#代!码网</div><strong>搞gaodaima代码</strong>AND `able`=1 AND upid='%d' "),  );  if(!array_key_exists($ID,$idArr)) return false;  list($fnid,$fnvalue,$cacheDir,$deep,$upid1,$pos1,$firstFile,$selectSQL) = $idArr[$ID];  global $dsql;  set_time_limit(0);  $tm1 = microtime(true);  $dir1 = DEDEDATA.$cacheDir;  RmRecurse($dir1);//delete this dir first!  if(!is_dir($dir1) && !mkdir($dir1,0777)) exit('--|目录创建失败!'.$dir1 );  $path1 = $dir1.$firstFile;  $data1 = 'Execute('s1',sprintf($selectSQL,1,$upid1));  while($row1 = $dsql->GetArray('s1'))  {    $data1 .= "\n".$row1[$fnid]."\t=>\t'".$row1[$fnvalue]."',";    $tm2 = microtime(true);    $pos2 = $pos1.' -> ['.$row1[$fnid].']'.$row1[$fnvalue];    $dir2 = $dir1."/".$row1[$fnid];    if(!is_dir($dir2) && !mkdir($dir2,0777))    {      echo("\n--|--|目录创建失败!".$dir2);      continue;    }    $path2 = sprintf('%s/%d.php',$dir2,$row1[$fnid]);    $data2 = 'Execute('s2',sprintf($selectSQL,2,$row1[$fnid]));    while($row2 = $dsql->GetArray('s2'))    {      $data2 .= "\n".$row2[$fnid]."\t=>\t'".$row2[$fnvalue]."',";      $tm3 = microtime(true);      $pos3 = $pos2.' -> ['.$row2[$fnid].']'.$row2[$fnvalue];      $dir3 = $dir2."/".$row2[$fnid];      if(!is_dir($dir3) && !mkdir($dir3,0777))      {        echo("\n--|--|--|目录创建失败!".$dir3);        continue;      }      $path3 = sprintf('%s/%d.php',$dir3,$row2[$fnid]);      $data3 = 'Execute('s3',sprintf($selectSQL,3,$row2[$fnid]));      while($row3 = $dsql->GetArray('s3'))      {        $data3 .= "\n".$row3[$fnid]."\t=>\t'".$row3[$fnvalue]."',";      }      $data3.= "\n);\n\n/* [level=3]all taken ".sprintf('%.6f',microtime(true)-$tm3)."s  */\n?".'>';      $fp3 = fopen($path3,'w');      fwrite($fp3,$data3);      fclose($fp3);    }    $data2.= "\n);\n\n/* [level=2]all taken ".sprintf('%.6f',microtime(true)-$tm2)."s  */\n?".'>';    $fp2 = fopen($path2,'w');    fwrite($fp2,$data2);    fclose($fp2);  }  $data1.= "\n);\n\n/* [level=1]all taken ".sprintf('%.6f',microtime(true)-$tm1)."s  */\n?".'>';  $fp1 = fopen($path1,'w');  fwrite($fp1,$data1);  fclose($fp1);  return true;}

生成的内容1:(表diqu)

<?php/* CACHE: DIQU : 中国 -> [6]广东 -> [76]广州	 *//* time:  2012-12-21 12:28:42 *//* path:  D:/website/35***.com/www/data/cacheDiqu/6/76/76.php */$CACHE['DIQU']['6']['76'] = array(692	=>	'从化市',693	=>	'天河区',694	=>	'东山区',695	=>	'白云区',696	=>	'海珠区',697	=>	'荔湾区',698	=>	'越秀区',699	=>	'黄埔区',700	=>	'番禺区',701	=>	'花都区',702	=>	'增城区',703	=>	'从化区',704	=>	'市郊',);/* [level=3]all taken 0.002312s  */?>

生成的内容2:(表infocat)

<?php/* CACHE: INFOCAT : 大分类	 *//* time:  2012-12-21 12:28:43 *//* path:  D:/website/***.com/www/data/cacheInfocat/0.php */$CACHE['INFOCAT'] = array(10001	=>	'照明工业',10152	=>	'电子元器件',10272	=>	'传媒、广电',10392	=>	'安全、防护',10603	=>	'包装',10788	=>	'纸业',10897	=>	'办公、文教',11183	=>	'数码、电脑',11384	=>	'电工电气',11694	=>	'纺织、皮革',11894	=>	'服装',12015	=>	'服饰',12069	=>	'机械及行业设备',13100	=>	'五金、工具',13506	=>	'化工',14224	=>	'精细化学品',14643	=>	'橡塑',14932	=>	'环保',15128	=>	'仪器仪表',15520	=>	'家居用品',15805	=>	'家用电器',15967	=>	'建筑、建材',16437	=>	'交通运输',16597	=>	'礼品、工艺品、饰品',16838	=>	'能源',16978	=>	'农业',17300	=>	'汽摩及配件',17636	=>	'食品、饮料',17906	=>	'通信产品',18034	=>	'玩具',18092	=>	'冶金矿产',18536	=>	'印刷',18712	=>	'运动、休闲',18940	=>	'商务服务',19177	=>	'项目合作',19233	=>	'二手设备转让',19278	=>	'加工',19455	=>	'代理',19512	=>	'库存积压',);/* [level=1]all taken 5.697496s  */?>

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:【求点评】生成缓存的一段代码,大家觉得有什么不足之处?代码风格方面
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址