当前位置: 首页 > news >正文

上海计算机网页制作百度起诉seo公司

上海计算机网页制作,百度起诉seo公司,银川网站建设一条龙服务,设计室内装修的软件十多年前开发框架时,为了效率不断试过各种代码写法,今天又遇到了,想想php8时代会不会有所变化,结果其实也还是和当年一样,但当年没写博客,但现在可以把数据记录下来了。 PHP_loop_ireflies_dark_forest 项目…

十多年前开发框架时,为了效率不断试过各种代码写法,今天又遇到了,想想php8时代会不会有所变化,结果其实也还是和当年一样,但当年没写博客,但现在可以把数据记录下来了。

PHP_loop_ireflies_dark_forest

项目基本情况是一个考试系统调用题库后,根据是否需要随机出选项和是否需要统一改分数这两个条件,循环对每一道题的初始数据进行修改。我是从类的方法里直接截取的代码片段,所以代码部分只需懂意思即可,命名都很容易理解。

  • $result 是数据库里提取的题库;
  • $score 是统一的题型分数(如果没有统一题型分数,那么每题都有自己不同的初始分);
  • $this->l_char->json_to_array() 是char字符类json转化为数组格式的方法;
  • $this->_random_option() 是随机化题目选项;
  • 目前题库共有3328题,每个题型所含题目数量不同;
  • PHP版本为8.1.3

为了保证尽量每种方法的实验数据在一个条件下,所以禁用随机出题,保证题目都一样,同时保证每题的选项都在随机变化。

在这里插入图片描述

判断后循环

if(!empty($score) and !empty($israndomoption))
{               foreach($result as $k=>$row){//分数$row['questionscore'] = $score;//选项是否随机$row['questionoption'] = $this->l_char->json_to_array($row['questionoption']);$row['questionoption'] = $this->_random_option($row['questionoption']);$result[$k] = $row;}   
}elseif(!empty($score)){    foreach($result as $k=>$row){//分数$row['questionscore'] = $score;$result[$k] = $row;}   
}elseif(!empty($israndomoption)){             foreach($result as $k=>$row){//选项是否随机$row['questionoption'] = $this->l_char->json_to_array($row['questionoption']);$row['questionoption'] = $this->_random_option($row['questionoption']);$result[$k] = $row;}   
}

某题型有2题

次数执行时间内存占用
10.0000151539528
20.0000171543376
30.0000151543280
40.0000151543280
50.0000161543280
60.0000161543280
70.0000171543280
80.0000381543280
90.0000171543280
100.0000151543280

某题型有20题

次数执行时间内存占用
10.0000261551272
20.0000251560240
30.0000261560656
40.0000271560656
50.0000271560656
60.0000441560656
70.0000261560656
80.0000271560656
90.0000261560656
100.0000261560656

某题型有50题

次数执行时间内存占用
10.0000801805832
20.0000781868048
30.0000761868464
40.0000771868464
50.0000851868464
60.0000781868464
70.0000841868464
80.0000871868464
90.0000881868464
100.0000831868464

每题题型数量不限

次数题型1执行时间题型1内存占用题型2执行时间题型2内存占用题型3执行时间题型3内存占用题型4执行时间题型4内存占用题型5执行时间题型5内存占用
10.00058423434880.00046027402960.00022628755200.00020232986000.0005063809024
20.00056923434880.00047027402960.00023928755200.00025332986000.0007373809024
30.00058428316560.00047232284640.00024433636880.00020337867680.0005584297192
40.00063728321040.00050632289120.00037133641360.00019237872160.0004924297640
50.00057128321040.00047932289120.00023433641360.00020337872160.0005024297640
60.00059428321040.00047532289120.00023533641360.00022637872160.0004914297640
70.00061228321040.00052932289120.00024133641360.00033837872160.0007854297640
80.00057928321040.00053832289120.00023933641360.00020337872160.0004844297640
90.00058823434880.00048327402960.00024128755200.00019032986000.0005063809024
100.00058928316560.00051632284640.00023933636880.00019337867680.0004914297192

循环内判断

foreach ($result as $k => $row) {if (!empty($score)) {$row['questionscore'] = $score;}if (!empty($israndomoption)) {$row['questionoption'] = $this->l_char->json_to_array($row['questionoption']);$row['questionoption'] = $this->_random_option($row['questionoption']);}$result[$k] = $row;
}

某题型有2题

次数执行时间内存占用
10.0000161539504
20.0000151543352
30.0000151543256
40.0000171543256
50.0000161543352
60.0000161543256
70.0000171543256
80.0000161543256
90.0000141543256
100.0000161547072

某题型有20题

次数执行时间内存占用
10.0000271551248
20.0000261560216
30.0000371560632
40.0000271560632
50.0000251560632
60.0000261560632
70.0000281560632
80.0000261560632
90.0000261560632
100.0000271560632

某题型有50题

次数执行时间内存占用
10.0000941805808
20.0000791868024
30.0000811868440
40.0000801868440
50.0000761868440
60.0000811868440
70.0000781868440
80.0000891868440
90.0000791868440
100.0000871868440

每题题型数量不限

次数题型1执行时间题型1内存占用题型2执行时间题型2内存占用题型3执行时间题型3内存占用题型4执行时间题型4内存占用题型5执行时间题型5内存占用
10.00067623434800.00057327402880.00026628755120.00024632985920.0005783809016
20.00059028316320.00049832284400.00029333636640.00022037867440.0005664297168
30.00060828320800.00048932288880.00023133641120.00021337871920.0005414297616
40.00064328320800.00052632288880.00023633641120.00020837871920.0005364297616
50.00059028320800.00047832288880.00024433641120.00020537871920.0005784297616
60.00068228320800.00048932288880.00023733641120.00020937871920.0005634297616
70.00071328320800.00052632288880.00024133641120.00041637871920.0005124297616
80.00062123434640.00047727402720.00024028754960.00021232985760.0005143809000
90.00059628316320.00048932284400.00023433636640.00020537867440.0006244297168
100.00061228320800.00047232288880.00024833641120.00020737871920.0005264297616

函数内判断

$result = array_map(function ($row) use ($score, $israndomoption) {if (!empty($score)) {$row['questionscore'] = $score;}if (!empty($israndomoption)) {$row['questionoption'] = $this->l_char->json_to_array($row['questionoption']);$row['questionoption'] = $this->_random_option($row['questionoption']);}return $row;
}, $result);

某题型有2题

次数执行时间内存占用
10.0000241537160
20.0000211541008
30.0000181540912
40.0000181540912
50.0000181537160
60.0000191541008
70.0000191540912
80.0000171540912
90.0000201540912
100.0000181540912

某题型有20题

次数执行时间内存占用
10.0000331548904
20.0000311557872
30.0000281558288
40.0000431558288
50.0000301558288
60.0000311558288
70.0000321558288
80.0000331558288
90.0000301558288
100.0000321558288

某题型有50题

次数执行时间内存占用
10.0000841803464
20.0000851865680
30.0000811866096
40.0001411866096
50.0000811866096
60.0001391866096
70.0000911866096
80.0000801803464
90.0000801865680
100.0000851803464

每题题型数量不限

次数题型1执行时间题型1内存占用题型2执行时间题型2内存占用题型3执行时间题型3内存占用题型4执行时间题型4内存占用题型5执行时间题型5内存占用
10.00064223411040.00052427379120.00044628731360.00023132962160.0005433806640
20.00063128292720.00051832260800.00043333613040.00022437843840.0005174294808
30.00062928297200.00050632265280.00023933617520.00021537848320.0006594295256
40.00060828297200.00049032265280.00025133617520.00022937848320.0005204295256
50.00064628297200.00053732265280.00024133617520.00023137848320.0008014295256
60.00061028297200.00049232265280.00024933617520.00023237848320.0005314295256
70.00064028297200.00048432265280.00025733617520.00030037848320.0005444295256
80.00058728297200.00050032265280.00038833617520.00022937848320.0005274295256
90.00065728297200.00061032265280.00024633617520.00022437848320.0007674295256
100.00060528297200.00049432265280.00024433617520.00022037848320.0005104295256

不同方法下数量不限时的平均值

方法题1时间题1内存题2时间题2内存题3时间题3内存题4时间题4内存题5时间题5内存
判断后循环0.00059072685429.60.00049283082237.60.00025093217461.60.00022033640541.60.00055524150965.6
循环内判断0.00063312734268.80.00050173131076.80.0002473266300.80.00023413689380.80.00055384199804.8
函数内判断0.00062552780813.60.00051553177621.60.00029943312845.60.00023353735925.60.00059194246349.6

结论

方法2题平均执行时间2题平均内存占用20题平均执行时间20题平均内存占用50题平均执行时间50题平均内存占用数量不限平均执行时间数量不限平均内存占用
判断后循环0.00001811542914.40.00002815596760.00008161862159.20.000421983355327.2
循环内判断0.00001581543281.60.000027515596520.00008241862135.20.000433943404166.4
函数内判断0.00001921540180.80.000032315573080.00009471847223.20.000453163450711.2

基本和以前版本的结论一致:

  • 在数量少的时候,循环内判断速度最快,函数内判断内存占用最少;
  • 在数量有所提升后,判断后循环速度最快,函数内判断内存占用最少;
  • 在数量上到一定量后,判断后循环速度最快,并且其内存占用也是最少。

如果字符量较少,不同方法所带来的损耗在一般应用中可以忽略;

在这里插入图片描述

http://www.ds6.com.cn/news/5672.html

相关文章:

  • 网站开发 保证书seo文章代写平台
  • 沈阳网站建设建设公司排名seo优化教程自学网
  • 医美三方网站怎么做win7优化大师官网
  • 上门做指甲哪个网站seo搜索引擎优化策略
  • 怎么做网站小图标杭州百度seo优化
  • 网站在哪设置关键词爱站网关键词查询网站的工具
  • 网站做程序需要多久潍坊疫情最新消息
  • wordpress菜单居右seo的最终是为了达到
  • 大学网站建设方案超八成搜索网站存在信息泄露问题
  • 网站模板源码免费下载抖音seo公司
  • 东易日盛装饰装修公司seo百度关键字优化
  • 网站的管理与维护焊工培训ppt课件
  • 做网站的程序员工资大约月薪文明seo技术教程网
  • 云南做网站的公司搜索引擎优化不包括
  • 日照网站开发建设seo网站自动发布外链工具
  • 做网站一般用什么软件谷歌seo软件
  • 莱芜政府网站官网电商运营入门基础知识
  • 做php网站用的软件软文代写兼职
  • 做网站的开题报告如何制作视频网站
  • wordpress站点限制插件品牌关键词排名优化怎么做
  • html网页制作视频教学温州seo优化
  • 湘潭做网站的公司常州网站建设书生商友
  • 河北省建设厅网站网上建设大厅2022最新国际新闻10条简短
  • 电脑怎样做轰炸网站客户引流的最快方法是什么
  • 佛山做网站哪家公司最好seo网站优化培训多少价格
  • 制作查询网站网络媒体发稿
  • 郑州网站建设咨询企业网站怎么推广
  • 政府网站建设的分析免费推广的网站
  • 容桂网站建设怎么自己做网站
  • 认真做门户网站迎检工作培训心得体会800字