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

免费行情软件app网站大全下载免费商城网站建设特点有哪些

免费行情软件app网站大全下载免费,商城网站建设特点有哪些,太原网络推广公司,引流推广方法十多年前开发框架时,为了效率不断试过各种代码写法,今天又遇到了,想想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.yayakq.cn/news/702258/

相关文章:

  • 网站集群建设申请重庆建设工程信息网官网平台
  • 网站建设岗位工作范围管理软件是什么
  • python做爬虫和做网站十大电子商务平台
  • 小型企业网站模板徐州模板网站托管平台
  • jsp怎么做购物网站网设
  • 什么是门户网站?263企业邮箱怎么注册
  • 企业网站模板下载选哪家芜湖市建设路小学网站
  • 建设企业网站公电子商城开发网站开发
  • 制作网站赚钱大连在哪里个省份
  • 小程序网站怎么做开源商城系统排行
  • 自己做的网站如何上线qq网页版登录入口手机版
  • 医院网站建设 招标国家企业信用信息公示系统网址
  • 英文网站建设 招标网站页面代码优化
  • 淘宝客怎么做推广网站临西网站建设公司
  • vs做的网站项目可以改名字吗wordpress说明文档下载
  • 访问国外的网站服务器无法访问查询建设资质的网站
  • 网站源码网址修改怎么知道一个网站是哪家公司做的
  • 平面设计师看的网站市场调研报告800字
  • 泉州效率网络网站建设做网站要用什么软件图文教程
  • 有了域名怎么建网站阿里云服务器做网站django
  • 响应式视频网站模板适合设计师的网站
  • 国家建设工程质量检查标准网站wordpress 只有英文版
  • 前端怎么做网站服务器租用泰海
  • 网站需求列表论坛门户网站开发
  • c 网站开发如何每天10点执行任务网站开发需求书模板
  • 物流网站模板免费微信公众号怎么创建内容
  • 网站网站程序架设wordpress鼠标插件
  • 淄博做网站的公司有哪些wordpress nginx配置文件
  • 网站建设的目的和目标跨境网站入口
  • 做网站要学多久做网站ps分辨率给多少钱