关于php几种字符串连接的效率比较(详解)


Posted in PHP onFebruary 22, 2017

php大致有三种字符串连接:

1、直接用.来进行连接。

2、用.=进行连接。

3、先压入数组,再通过join函数连接。

下面分别对这三种方法的效率进行测试:

第一种方法代码如下:

<?php   
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     $result=$result.$temp;
   }
   echo get_tm()-$start;
   
?>

运行4次,除去第一次运行时间,三次时间分别为:

22.165272951126
22.003527164459
22.15947508812

第二种方法代码如下:

<?php     
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     $result.=$temp;
   }
   echo get_tm()-$start;
   
?>

运行4次,除去第一次运行时间,三次时间分别为:

3.1967310905457
3.1296961307526
3.0872850418091

第三种方法代码如下:

<?php      
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   $arr=array();
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     array_push($arr, $temp);
   }
   $result=join($arr);
   echo get_tm()-$start;
   
?>

运行4次,除去第一次运行时间,三次时间分别为:

3.3184430599213
3.2759411334991
3.2663381099701

由上可见,直接通过.进行字符串的连接效率最为低下。

以上这篇关于php几种字符串连接的效率比较(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用PHP+MySql编写聊天室
Oct 09 PHP
比较strtr, str_replace和preg_replace三个函数的效率
Jun 26 PHP
wordpress自定义url参数实现路由功能的代码示例
Nov 28 PHP
PHP 正则表达式常用函数
Aug 17 PHP
PHP实现HTML生成PDF文件的方法
Nov 07 PHP
php读取mssql的ntext字段返回值为空的解决方法
Dec 30 PHP
通过php删除xml文档内容的方法
Jan 23 PHP
php支付宝手机网页支付类实例
Mar 04 PHP
反射调用private方法实践(php、java)
Dec 21 PHP
微信支付PHP SDK ―― 公众号支付代码详解
Sep 13 PHP
Ajax中的JSON格式与php传输过程全面解析
Nov 14 PHP
PHP实现websocket通信的方法示例
Aug 28 PHP
php可变长参数处理函数详解
Feb 22 #PHP
php操作access数据库的方法详解
Feb 22 #PHP
Smarty3配置及入门语法
Feb 22 #PHP
PHP中ajax无刷新上传图片与图片下载功能
Feb 21 #PHP
PHP+JavaScript实现无刷新上传图片
Feb 21 #PHP
PHP编辑器PhpStrom运行缓慢问题
Feb 21 #PHP
如何离线执行php任务
Feb 21 #PHP
You might like
php实现搜索一维数组元素并删除二维数组对应元素的方法
2015/07/06 PHP
PHP实现的限制IP投票程序IP来源分析
2016/05/04 PHP
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
2007/04/12 Javascript
论坛里点击别人帖子下面的回复,回复标题变成“回复 24# 的帖子”
2009/06/14 Javascript
jQuery与ExtJS之选择实例分析
2010/08/19 Javascript
JavaScript 打地鼠游戏代码说明
2010/10/12 Javascript
js/ajax跨越访问-jsonp的原理和实例(javascript和jquery实现代码)
2012/12/27 Javascript
javascript:;与javascript:void(0)使用介绍
2013/06/05 Javascript
js实现右下角可关闭最小化div(可用于展示推荐内容)
2013/06/24 Javascript
JQuery教学之性能优化
2014/05/14 Javascript
javascript实现textarea中tab键的缩排处理方法
2015/06/26 Javascript
jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
2016/01/18 Javascript
实例解析js中try、catch、finally的执行规则
2017/02/24 Javascript
vue.js+Echarts开发图表放大缩小功能实例
2017/06/09 Javascript
axios中cookie跨域及相关配置示例详解
2017/12/20 Javascript
vue指令只能输入正数并且只能输入一个小数点的方法
2018/06/08 Javascript
用jQuery实现抽奖程序
2020/04/12 jQuery
ES6 十大特性简介
2020/12/09 Javascript
[51:53]DOTA2-DPC中国联赛 正赛 RNG vs Dragon BO3 第二场 1月24日
2021/03/11 DOTA
Python下使用Scrapy爬取网页内容的实例
2018/05/21 Python
python消除序列的重复值并保持顺序不变的实例
2018/11/08 Python
Python Matplotlib实现三维数据的散点图绘制
2019/03/19 Python
python实现nao机器人手臂动作控制
2019/04/29 Python
Pycharm 使用 Pipenv 新建的虚拟环境(图文详解)
2020/04/16 Python
阿玛尼化妆品美国官网:Giorgio Armani Beauty
2017/02/02 全球购物
美国电力供应商店/电气批发商:USESI
2018/10/12 全球购物
如何实现一个自定义类的序列化
2012/05/22 面试题
vue实现倒计时功能
2021/03/24 Vue.js
房地产销售大学生自我评价分享
2013/11/11 职场文书
翻译专业应届生求职信
2013/11/23 职场文书
普通院校学生的自荐信
2013/11/27 职场文书
面料业务员岗位职责
2013/12/26 职场文书
探亲邀请信范文
2014/01/30 职场文书
国庆促销活动总结
2014/08/29 职场文书
教师个人年度总结
2015/02/11 职场文书
警示教育片观后感
2015/06/17 职场文书